Test planning is concerned with the implementation of test strategy for each test level or all the levels of testing.
Ideally there is a master test plan that spans all levels of testing and ensures that sufficient amount of testing occurs for a particular test level, In addition to the master test plan that spans across all level of testing test planning also occurs at each test level.
Test planning starts at the initiation of the test process for that level and continues throughout the project until the closure activities for that level are complete.
The key points that test planning addresses are:
- Test planning involves identification of the test activities and resources required to meet the test strategy objectives.
- Test planning is helpful in figuring out methods for gathering and tracking the metrics that will be used to guide the project. Determine that the test progress is as per the plan and assessing the achievement by objectives.
The tasks that occur in test planning are determined based on the test strategy that is selected for that project.
Example 1: If Risk based test strategy is selected for the project then the test planing will use risk analysis to guide the whole test planning process. i.e. depending on the risk identified for the particular component the test planning needs to guide the amount of testing effort for that component. If their is more risk identified for a particular component then signification amount of effort needs to be spent for that particular component as compared to other low risk components, similarly if their are many defects identified for a component then more testing needs to be done for that component. Likewise if their are many issues found in design specification then the test planning process will result is more static testing of design specification.
Risk information also guides how to prioritize various testing activities, if performance is of high risk then performance testing needs to start early as soon as integrated system is available.
Example 2: If regression-averse test strategy is to be employed in the project then the test analysis will consider factors like, selecting the right tool for automating the test cases and planning resources and timeline for automating functional tests early so that these regression tests can be run whenever there is change in code.
Example 3: If the reactive test strategy is to be used in the project then the test analysis will consider factors like identifying tools for dynamic testing such as exploratory testing.
Test planning stage also defines the approach to testing like including which test levels will be employed, the goals for each test levels and what techniques are to be used for each level of testing. We set a frameworks for deriving test cases, test condition and test procedures from test basis. Test plan helps us to ensure that you are actually testing what you set out to test during test execution.
To do effective test planning you are required to have an understanding of complex relationships that exists between test basis like requirements or risks, test conditions and test cases that cover them. Relationships also exist between development team documents like detailed design specification, business requirements and test work products from testing team, you also need to have the relationship understanding in order to finalize the tools required for testing.
Test planning also lists the specific feature of the software that are in scope and the features that are not in scope. Test manager also needs to work for initial test environment and when will it be available.
Finally test planning also needs to address all the external dependencies and associated SLAs. If there is any dependency on external resources or projects like external vendor, deployment team, DB admin etc. then the contract and SLA need to be made upfront.