The Test Strategy is a formal description of how a software product will be tested. A test strategy is developed for all levels of testing, as required. The test team analyzes the requirements, writes the test strategy and reviews the plan with the project team. The test plan may include test cases, conditions, the test environment, a list of related tasks, pass/fail criteria and risk assessment.

Inputs for this process:

  • A description of the required hardware and software components, including test tools. This information comes from the test environment, including test tool data.
  • A description of roles and responsibilities of the resources required for the test and schedule constraints. This information comes from man-hours and schedules.
  • Testing methodology. This is based on known standards.
  • Functional and technical requirements of the application. This information comes from requirements, change request, technical and functional design documents.
  • Requirements that the system can not provide, e.g. system limitations.
Outputs for this process:
  • An approved and signed off test strategy document, test plan, including test cases.
  • Testing issues requiring resolution. Usually this requires additional negotiation at the project management level.

Test Strategy means how we plan to cover the product so as to develop an adequate assessment of quality.

Why do we need Test Strategy? The Test Strategy is the plan for how you are going to
approach testing. It is like a project charter that tells the world how you are going to approach the project. You may have it all in your head, and if you are the only person doing the work it might be OK. If however you do not have it all in your head, or if others will be involved, you need to map out the ground rules.

A good test strategy is:

- Specific


- Justified

Test Approach and Test Architecture are other terms commonly used to describe what I’m calling test strategy.

Example of a poorly stated (and probably poorly conceived) test strategy:

"We will use black box testing, cause-effect graphing, boundary testing, and white box testing to test this product against its specification."