What is Test Strategy?
A Test Strategy is a plan for defining the testing approach, and it answers to questions like what you want to get done and how you are going to accomplish it. It is most important document for any QA team in software testing, and effectively writing this document is a skill that every tester develops with experience.
Test planning activities guides team to define Test coverage and testing scope. It also aids testers to get clear picture of the project at any instance. The possibility of missing any test activity is very low when there is a proper test strategy in place. Testing strategy plan must be conversed with the entire team so that the team will be consistent on approach and responsibilities.
Test Plan Vs Test Strategy
There is a great confusion about Test Plan and Test Strategy documents. Different organization have their unique processes and standards to manage these documents. For example, some organization include test strategy facts in Test Plan itself while some organization include strategy as a subsection within the testing plan.
To make it clearer if Test Plan is some destination then Test strategy is a map to reach that destination.
How to prepare a good test strategy document
Every organization has their unique priority and set of rules for software designing, so do not copy any organization blindly. Always ensure that their document is compatible and adds value to your software development before following the template.
Test Strategy in STLC:
It defines parameters like
- Who will review the document?
- Who will approve this document?
- Testing activities carried out with timelines
Step#2 Test Approach
- Process of testing
- Testing levels
- Roles and responsibilities of each team member
- Types of Testing ( Load testing, Security testing, Performace testing etc.)
- Testing approach & automation tool if applicable
- Adding new defects, re-testing, Defect triage, Regression Testing and test sign off
Step#3 Test Environment
- Define number of requirement and setup required for each environment
- Define backup of test data and restore strategy
Step#4 Testing Tools
- Automation and Test management tools needed for test execution
- Figure out number of open-source as well as commercial tools required, and determine how many users are supported on it and plan accordingly
Step#5 Release Control
- Release management plan with appropriate version history that will make sure test execution for all modification in that release
Step#6 Risk Analysis
- List all risks that you can estimate
- Give a clear plan to mitigate the risks also a contingency plan
Step#7 Review and Approvals
- All these activities are reviewed and sign off by the business team, project management, development team, etc.
- Summary of review changes should be traced at the beginning of the document along with approved date, name, and comment
Software release goes through Test Strategy documents time to time to map the progress of testing in the right direction. When the release date is close many of these activities will be skipped, it is desirable to discuss with team members whether cutting down any particular activity will help for release without any potential risk.