1. Content of Test Planning
Test Plan outlines the testing activities for development and maintenance projects. Test Plan is influenced by the organization’s testing policy and strategy, the project development life cycle and the method being used, the scope of the test, the objectives, risks, constraints, testing capabilities, and project resources.
Making a Test Plan is a continuous activity and is carried out throughout the product development period. While developing, there is a risk that Test Plan can be adjusted. Test Plan preparation activities may include the following:
- Determine the scope, objectives and risks of the test
- Determine the overall approach of the experiment
- Integrate and incorporate test activities into software development life cycle activities
- Make decisions about what to test, the people and other resources needed to carry out the inspection activities
- Schedule time for analysis, design, implementation and evaluation of activities on specific dates
- Monitor and control inspection activities
- Budgeting for inspection activities
- Determine the level of detail and structure of test documents
The content of the Test Plan is different and may extend beyond the activities defined above. Sample test plans can be found in ISO (ISO / IEC / IEEE 29119-3).
2. Learn the Test Strategy methods
Test Strategy provides a general description of the testing process, usually at the product or organization level. Common types of testing strategies include:
- Analytical: This type of testing strategy is based on analyzing a number of factors (e.g., requirements or risks). Risk-based testing is an example of this strategy, in which the tests are designed and prioritized based on the level of risk.
- Model-Based: In this type of testing strategy, tests are designed based on several models of some required aspects of the product, such as functionality, business processes, internal structure. or non-functional characteristics (e.g. reliability).
- Methodical: This type of testing strategy is based on the use of a number of pre-defined test sets or test conditions, such as classification of common defect types or a list of important quality characteristics or standard user experience.
- Process-compliant (or standard-compliant): This type of testing strategy involves analyzing, designing and executing tests based on external rules and standards, such as specific standards. sector, process or standard imposed by the organization.
- Directed (or consultative): This type of testing strategy is driven primarily by advice and guidance from stakeholders, business or technology experts who may be outside the test group. or outside the organization.
- Regression-averse: This type of testing strategy desires to avoid regression testing. This testing strategy includes reuse of existing software, automation of regression tests and standard test suites.
- Reactive: In this type of testing strategy, the test has an effect on the component or system being tested and events that occur during the test run, rather than being planned (like previous strategy). Tests are designed and implemented and can be performed immediately in response to the knowledge gained from previous test results. Exploration testing is a common technique used in this strategy.
3. Learn Entry Criteria and Exit Criteria (otherwise known as Definition of Ready and Definition of Done)
In order to effectively control the quality of software and testing activities, there should be criteria that determine when a test operation should begin and when the activity should end. Entry Criteria defines prerequisites for performing a certain test operation. If the input criteria are not met, it is likely to be more difficult, more time consuming, more expensive and more risky. The Exit Criteria determines the conditions that must be met for a test operation to end. Entry Criteria and Exit Criteria must be defined for each test level and type of test and will vary based on the test objectives.
Typical Entry Criteria include:
- Availability of documents, specifications …
- The availability of checked items meets Exit Criteria for all previous inspection levels
- Availability of the test environment
- The necessary testing tools are available
- Available test data and other required resources
Typical Exit Criteria include:
- The planned test was performed
- Defined coverage has been achieved
- The number of unresolved bugs is within the agreed limits
- The estimated number of remaining errors is low enough
- Relevant levels of reliability, performance, usability, security and other qualitative characteristics are assessed.
4. Learn the Test Execution Schedule
When different test cases and test procedures are created and made up of test sets, test suites can be arranged according to the test execution schedule, the time to determine the order in which they will be. is running.
The test schedule should be based on factors such as priority, dependency, verification, regression testing. Ideally, test cases will be run based on their priority, usually performing the highest priority case test first. However, this practice may not work if the test cases depend on the features being tested. If a test case with a higher priority depends on a test case with a lower priority, the test case with the lower priority must be performed first.
5. Factors affecting Test Effort
Test Effort includes prediction of the amount of testing related work that will be needed to meet the goals of the test. Factors that affect Test Effort may include product characteristics, development process characteristics, human characteristics, test results, in particular:
- Risks associated with the product
- Quality of testing facilities
- Size of the product
- Complexity of the product domain
- Requirements for quality characteristics (e.g. security, reliability)
- The level of detail required for test material
- Compliance with laws and regulations
Development process characteristics:
- Stability and maturity of the organization
- Development model is in use
- Test approach
- The tools used
- Test procedure
- Pressure of time
- The skills and experience of the people involved, especially with similar projects and products
- Cohesion and team leadership
- The number and severity of errors found
- The number of errors to be redefined
- Technical Test Estimation
There are several estimation techniques used to determine the effort required for a full test. Two of the most commonly used techniques are:
- Data-based technique: Effort estimates are based on previous similar data or based on typical values
- Experts-based engineering: estimating testing efforts based on the experience of experts