Test Plan
Test Plan
Test Plan
1) Test Plan Identifier 2) References 3) Introduction 4) Test Items 5) Software Risk Issues 6) Features to be Tested 7) Features not to be Tested 8) Approach 9) Item Pass/Fail Criteria 10) Suspension Criteria and Resumption Requirements 11) Test Deliverables 12) Remaining Test Tasks 13) Environmental Needs 14) Staffing and Training Needs 15) Responsibilities 16) Schedule 17) Planning Risks and Contingencies 18) Approvals 19) Glossary
2 References
List all documents that support this test plan. Refer to the actual version/release number of the document as stored in the configuration management system. Do not duplicate the text from other documents as this will reduce the viability of this document and increase the maintenance effort. Documents that can be referenced include: Project Plan Requirements specifications High Level design document Detail design document Development and Test process standards Methodology guidelines and examples Corporate standards and guidelines
3 Introduction
4 Test Items
These are things you intend to test within the scope of this test plan. Essentially, something you will test, a list of what is to be tested. This can be developed from the software application inventories as well as other sources of documentation and information. It may also include key delivery schedule issues for critical elements. Remember, what you are testing is what you intend to deliver to the customer. This section can be oriented to the level of the test plan. For higher levels it may be by application or functional area, for lower levels it may be by program, unit, module or build.
6 Features to be Tested
This is a listing of what is to be tested from the customers viewpoint of what the system does. This is not a technical description of the software, but a USERS view of the functions. Set the level of risk for each feature. Use a simple rating scale such as (H, M, L): High, Medium and Low. These types of levels are understandable
8 Approach (Strategy)
This is your overall test strategy for this test plan; it should be appropriate to the level of the plan (master, acceptance, etc.) and should be in agreement with all higher and lower levels of plans. Overall rules and processes should be identified. Are any special tools to be used and what are they? Will the tool require special training? What metrics will be collected? Which level is each metric to be collected at? How is Configuration Management to be handled? How many different configurations will be tested? Hardware Software Combinations of HW, SW and other vendor packages What levels of regression testing will be done and how much at each test level? Will regression testing be based on severity of defects detected? How will elements in the requirements and design that do not make sense or are untestable be processed? If this is a master test plan the overall project testing approach and coverage requirements must also be identified. Specify if there are special requirements for the testing. Only the full component will be tested. A specified segment of grouping of features/components must be tested together.
11 Test Deliverables
What is to be delivered as part of this plan? Test plan document. Test cases. Test design specifications. Tools and their outputs. Simulators. Static and dynamic generators. Error logs and execution logs. Problem reports and corrective actions. One thing that is not a test deliverable is the software itself that is listed under test items and is delivered by development.
13 Environmental Needs
Are there any special requirements for this test plan, such as: Special hardware such as simulators, static generators etc. How will test data be provided? Are there special collection requirements or specific ranges of data that must be provided? How much testing will be done on each component of a multi-part feature? Special power requirements. Specific versions of other supporting software. Restricted use of the system during testing.
15 Responsibilities
Who is in charge? This issue includes all areas of the plan. Here are some examples: Setting risks. Selecting features to be tested and not tested. Setting overall strategy for this level of plan. Ensuring all required elements are in place for testing. Providing for resolution of scheduling conflicts, especially, if testing is done on the production system. Who provides the required training? Who makes the critical go/no go decisions for items not covered in the test plans?
18 Approvals
Who can approve the process as complete and allow the project to proceed to the next level (depending on the level of the plan)? At the master test plan level, this may be all involved parties. When determining the approval process, keep in mind who the audience is. The audience for a unit test level plan is different than that of an integration, system or master level plan. The levels and type of knowledge at the various levels will be different as well. Programmers are very technical but may not have a clear understanding of the overall business process driving the project. Users may have varying levels of business acumen and very little technical skills. Always be wary of users who claim high levels of technical skills and programmers that claim to fully understand the business process. These types of individuals can cause more harm than good if they do not have the skills they believe they possess.