During software development process you need to create many supporting documents. Out of which Test Strategy is most important document. It has been considered that test leader and managers are responsible for this document. Test strategy created at project level or organizational level. “Software Testing Approach” is defined in this document and usually it is created after business requirement document is ready. It carry the set of testing standards and does not allow to change it more frequently. So, sometime it also called as Static Document.
You will observe Test Strategy is part of Test Plan and it is perfectly fine. Many small organization have adopted the practice of adding Test Strategy in Test Plan. It does not harm the process if the project is small in terms of complexity and duration. But is you are dealing with large projects then it is advisable to go with Test Strategy at Project level and Test Plan at each phase level. Test Strategy define the objective of testing and how the objective can be achieved using the available resources.
Purpose of a Test Strategy
Business, Management, developer or Tester need to involve in deciding the goal and objective. It helps to manage the requirement and make sure that we are heading in right direction. Test Strategy helps us to define the test cases which are suitable for the project.
We need to think about all stakeholders while dealing with test focus. Each type of users have different focus toward testing.
Users – UAT
Tester – System and Functional Test
Designer – Integration Test Cases
Developer – Unit Testing
Contents of a Test Strategy
We have listed few most important aspect of Test Strategy which need to be take care of while developing it.
- Project Plan
- Project Risks
- Legal Rules – Depending of Business
- Standards and Process
- Stakeholders – Business, Management, Developer, Analyst and Testers
- Required Resources – Hardware and People
- Test Levels
- Test Environment
- Exit criteria for each phase
Software Integrity Levels
Software Integrity Level can be defined in many ways. Integrity level helps us to know how we goanna perform testing. Following we are listing few important Integrity level standards.
IEEE 1012 – General Software
ISO 26262 – Automotive Software
IEC 61508 – General Safety Critical Software
Test Objectives And Priorities
The overall objective of testing
The objective of every test case
The test case design techniques needed to achieve our goals in a systematic way.
The test objectives are our requirements specification for testing.