Test Plan Template
Test Plan Template
The Test Plan is the pivotal document around which all the software testing projects revolve. It
describes: what has to be done, to what quality standard, with what resource, to what time
scale, and outlines the risks and how they would be overcome.
Contents
Test Plan Identifier......................................................................................................................................2
Introduction.................................................................................................................................................2
Test Items....................................................................................................................................................2
Features To Be Tested.................................................................................................................................3
Features Not To Be Tested..........................................................................................................................3
Approach.....................................................................................................................................................3
Item Pass/Fail Criteria..................................................................................................................................4
Suspension Criteria and Resumption Requirements...................................................................................5
Test Deliverables.........................................................................................................................................5
Test Tasks....................................................................................................................................................6
Environmental Needs..................................................................................................................................6
Responsibilities............................................................................................................................................7
Staffing and Training Needs.........................................................................................................................7
Schedule......................................................................................................................................................7
Risks and Contingencies..............................................................................................................................8
Approvals.....................................................................................................................................................9
Introduction
State the purpose of the Plan, possibly identifying the level of the plan (master etc.). This is
essentially the executive summary part of the plan.
You may want to include any references to other plans, documents or items that contain
information relevant to this project/process. If preferable, you can create a references section to
contain all reference documents.
Project Authorization
Project Plan
Quality Assurance Plan
Configuration Management Plan
Relevant Policies and Standards
For lower level plans, reference higher level plan(s)
Identify the Scope of the plan in relation to the Software Project plan that it relates to.
Other items may include, resource and budget constraints, scope of the testing effort, how testing
relates to other evaluation activities (Analysis & Reviews), and possible the process to
be used for change control and communication and coordination of key activities.
As this is the “Executive Summary” keep information brief and to the point.
Test Items
These are things you intend to test within the scope of this test plan. Essentially a list of what is
to be tested. This can be developed from the software application test objectives inventories as
well as other sources of documentation and information such as:
Requirements Specifications
Design Specifications
Users Guides
Features To Be Tested
This is a listing of what is to be tested from the USERS viewpoint of what the system does. This
is not a technical description of the software but a USERS view of the functions. It is
recommended to identify the test design specification associated with each feature or set of
features. 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 to a User. You should be prepared to
discuss why a particular level was chosen.
This is another place where the test objectives inventories can to used to help identify the sets of
objectives to be tested together, (this takes advantage of the hierarchy of test objectives).
Depending on the level of test plan, specific attributes (objectives) of a feature or set of features
may be identified.
Approach
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?
3 Test Plan Template
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 are the regression test rules? How much 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.
Other information that may be useful in setting the approach are:
MTBF, Mean Time Between Failures - if this is a valid measurement for the test
involved and if the data is available.
SRE, Software Reliability Engineering - if this methodology is in use and if the
information is available.
How will meetings and other organizational processes be handled.
Are there any significant constraints to testing.
Resource availability
Deadlines
Are there any recommended testing techniques that should be used, if so why?
Test Deliverables
What is to be delivered as part of this plan?
Test plan
Test design specifications.
Test case specifications
Test procedure specifications
Test item transmittal reports
Test logs
Test Incident Reports
Test Summary reports
Test Incident reports
Test data can also be considered a deliverable as well as possible test tools to aid in the testing
process. One thing that is not a test deliverable is the software; that is listed under test items and
is delivered by development.
These items need to be identified in the overall project plan as deliverables (milestones) and
should have the appropriate resources assigned to them in the project tracking system. This will
ensure that the test process has visibility within the overall project tracking process and that the
test tasks to create these deliverables are started at the appropriate time. Any dependencies
between these deliverables and their related software deliverable should be identified. If the
predecessor document is incomplete or unstable the test products will suffer as well.
Test Tasks
There should be tasks identified for each test deliverable. Include all inter-task dependencies,
skill levels, etc. These tasks should also have corresponding tasks and milestones in the overall
project tracking process (tool).
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.
Tools (both purchased and created).
Communications
Web
Client/Server
Network
Topology
External
Internal
Bridges/Routers
Security
Responsibilities
Who is in charge? There should be a responsible person for each aspect of the testing and the test
process. Each test task identified should also have a responsible person assigned.
This 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?
6 Test Plan Template
Who makes the critical go/no go decisions for items not covered in the test plans?
Who delivers each item in the test items section?
Schedule
Should be based on realistic and validated estimates. If the estimates for the development of the
application are inaccurate the entire project plan will slip and the testing is part of the overall
project plan.
As we all know the first area of a project plan to get cut when it comes to crunch time at the end
of a project is the testing. It usually comes down to the decision, ‘Let’s put something out even if
it does not really work all that well’. And as we all know this is usually the worst possible
decision.
How slippage in the schedule will to be handled should also be addressed here.
If the users know in advance that a slippage in the development will cause a slippage in the
test and the overall delivery of the system they just may be a little more tolerant if they know it’s
in their interest to get a better tested application.
By spelling out the effects here you have a change to discuss them in advance of their actual
occurrence. You may even get the users to agree to a few defects in advance if the schedule slips.
At this point all relevant milestones should be identified with their relationship to the
development process identified. This will also help in identifying and tracking potential slippage
in the schedule caused by the test process.
It is always best to tie all test dates directly to their related development activity dates.
This prevents the test team from being perceived as the cause of a delay. For example: if system
testing is to begin after delivery of the final build then system testing begins the day after
delivery. If the delivery is late system testing starts from the day of delivery, not on a specific
date.
There are many elements to be considered for estimating the effort required for testing. It is
critical that as much information as possible goes into the estimate as soon as possible in order to
allow for accurate test planning. For a generalized list of considerations refer to the estimation
document in Appendix C.
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.