Test Plan
Master Test Plan
The master test plan is a document that describes in detail how testing is planned and the way it will be intuitively managed across multiple test levels.
A good master plan should cover the following: test planning, test analysis, test design, test implementation, test estimation, test execution, test monitoring, and control.
Test analysis is the activity that defines “what” is to be tested in the form of test conditions. Test conditions are identified by analysis of the test basis, objectives, and product risks. They are viewed as detailed measures and targets for success and are traceable back to the test basis and defined strategic objectives, including test objectives and other project or stakeholder criteria for success. Test conditions are also traceable to test designs, and other test work products as those work products are created.
For each test level, test planning starts at the initiation of the test process for that level and continues throughout the project until the completion of closure activities for that level. It involves the identification of the activities and resources required to meet the mission and objectives identified in the test strategy. Test planning also includes identifying the methods for gathering and tracking the metrics that are used to guide the project, determine adherence to plan, and assess the achievement of the objectives. By determining useful metrics during the planning stages, tools can be selected, training can be scheduled and documentation guidelines can be established.
Test design is the activity that defines “how” something is to be tested. It involves the identification of test cases by stepwise elaborating the identified test conditions or test basis using test techniques identified in the test strategy and/or the test plan.
Depending on the approaches used for test monitoring, test control, and traceability, test cases are directly related to the test basis and defined objectives. These objectives include strategic goals, test objectives, and other project or stakeholder criteria for success.
Test estimation, as a management activity, creates an approximate target for costs and completion dates associated with the activities involved in a particular operation or project.
The estimation should cover all activities involved in the test process—the estimated cost, effort, and, especially, duration of test execution.
In formally-documented contexts, test implementation is the activity in which test designs are implemented as concrete test cases, test procedures, and test data. More commonly, each test’s inputs, expected results, and test steps are documented together. Test implementation also includes creating stored test data.
Test implementation also involves final checks to ensure the test team is ready for test execution to take place. Checks could include ensuring delivery of the required test environment, test data, and code (possibly running some test environment and/or code acceptance tests) and that all test cases have been written, reviewed, and are ready to be run. It may also include checking against explicit and implicit entry criteria for the test level in question.
Test execution begins once the test object is delivered and the entry criteria to test execution are satisfied. Tests are designed or at least defined before test execution. Tools are in place for test management, defect tracking, and (if applicable) test execution automation.
In order to provide efficient test control, a testing schedule and monitoring framework must be established to track test work products and resources against the plan. This framework includes detailed measures and targets that are needed to relate the status of test work products and activities to the plan and strategic objectives.
Test control is an ongoing activity. It involves comparing actual progress against the plan and implementing corrective actions when needed. Test control guides the testing to fulfill the mission, strategies, and objectives, including revisiting the test planning activities as needed. Appropriate reactions to the control data depend on detailed planning information.
Level Test Plan
As the name implies, the level test plan explains in detail the testing activities that must be performed for every test level or, sometimes, test type. Normally, the test levels listed in the master testing plan are expanded in the level test plan. They provide schedule, task, and milestone details not necessarily covered in the master test plan. In addition, to the extent that different standards and templates apply to the specification of tests at different levels, these details would be covered in level test plans.
A single test plan is often the only test management document written on less formal projects or operations. For Agile projects, sprint or iteration test plans may take the place of level test plans.
Test Closure Activities
Once test execution is determined to be complete, the key outputs are captured and either passed to the relevant person or archived.
Test closure activities fall into four main groups:
- Test completion check – ensuring that all test work is indeed concluded.
- Test artifacts handover – delivering valuable work products to those who need them.
- Lessons learned – performing or participating in retrospective meetings where important lessons are documented. In these meetings, plans are established to ensure that good practices are repeated, and poor practices are either not repeated or, where issues cannot be resolved, they are accommodated within project plans.
These tasks are important and often missed, and we explicitly include them in the test plan.
It is common for one or more of these tasks to be omitted, usually due to premature reassignment or dismissal of project team members, resource or schedule pressures on subsequent projects, or team burnout. The contract should specify the required tasks on projects carried out under the contract, such as custom development.
Evaluating Exit Criteria and Reporting
From the point of view of the test process, it is important to ensure that effective processes are in place to provide the source information necessary for evaluating exit criteria and reporting.
The definition of the information requirements and collection methods are part of test planning, monitoring, and control. During test analysis, test design, test implementation, and test execution, our Test Manager ensures that members of the test team responsible for those activities provide the information required accurately and timely to facilitate effective evaluation and reporting.
The frequency and detail required for reporting depend on the project and the organization. This is negotiated during the test planning phase and includes consultation with relevant project stakeholders.