6.1 Develop Tests
There are six sub-sections in the 6. Approach section: 6.1 Develop Tests, 6.2 Prepare to Test, 6.3 Run Tests, 6.4 Review Test Results, 6.5 Plan Testing, and 6.6 Change Management.
This subsection outlines the six steps to be applied in developing the formal tests required to run any form of testing. The six steps are shown in the diagram.
- Analyse Requirements - This subsection deals with analysing the requirements at an early stage in development. This technique helps achieve the UAT objective of ensuring all functionality required for business scenarios has been delivered by checking if it has been specified.
- Develop Scenarios - Developing scenarios is about deciding and describing what business scenarios will be dealt with by the system. This technique helps achieve the UAT objective of ensuring all functionality that is delivered works in business scenarios by specifying them early. A suitable technique is Use Case.
- Derive Acceptance Criteria - Once the previous two activities are underway or completed then the set of questions to be asked about the system to see if it matches the capability needed are prepared. The Acceptance Criteria are descriptions of what you will be testing. In this subsection you specify the techniques that will be employed to generate the Acceptance Criteria for each of the features to be tested.
- Construct Test Cases - Once the Acceptance Criteria have been specified then sets of test data need to be specified in order to check the criteria. Test Cases are the set of specific inputs and expected results which enable one or more Acceptance Criteria to be proved.
- Write Test Scripts - Test scripts are the operational instructions for running Test Cases including: what has to be done to the system, what has to be measured, and how to do the measurement. Test scripts should contain enough details to enable the UAT testers to run the tests and know when and how to measure the results. Test Scripts are often the bulk of the paperwork on a project. Various methodologies seem to require great detail in the test scripts. This is expensive to do and if the previous steps for developing tests have been followed is often unnecessary.
- Review Documents - This is a key quality process of checking all documentation produced during the development of the system. Reviewing of documents discovers many faults in the documents and hence the system. All documents produced during development and UAT should be reviewed, in particular the requirements and the various analyses of those requirements. The problem with reviews is the formal process used by many organisations is resource hungry and bureaucratic, so we recommend informal reviews where people just comment on documents to achieve many, if not all, of the benefits of the review process. This technique helps achieve the UAT objectives of ensuring all functionality that is delivered works in business scenarios, and ensuring all functionality required for business scenarios has been delivered.
Sample Text for 6.1. Develop Tests
Develop Tests consists of six interrelated sub-processes which start with the requirements and end up with a set of Test Cases with Test Scripts to run them.
6.1.1 Analyse Requirements
The testing team will analyse the requirements and make certain they are well structured. They will then use matrix techniques to aid the discovery of any missing requirements.
6.1.2 Develop Scenarios
The UAT team will develop a set of lightweight business scenarios that interact with the system using the USE Case technique.
These scenarios will be compared with the results of the requirements analysis to discover any additional missing requirements.
6.1.3 Derive Acceptance Criteria
For UAT the design techniques used will be the black box techniques of:
- Scenario Analysis using Use Cases.
- Equivalence Partitions.
If there are any concerns about aspects of the system testing then additional Acceptance Criteria will be developed using:
- Boundary Value Analysis in areas where system testing has not occurred.
- Experience Testing.
6.1.4 Construct Test Cases
For each of the Acceptance Criteria a set of test data will be specified which will exercise it under test. So that the full set of test data will have tested all of the Acceptance Criteria at least once.
6.1.5 Write Test Scripts
Test Scripts will be written to enable all Test Cases to be run. They will contain enough detail to allow the running of the tests as well as specifying when results should be checked and how to check them.
Where possible general Tests Scripts will be produced which can be used for several sets of Test Case data.
6.1.6 Review Documents
The UAT team will review all relevant requirements documents, and any documents produced by the UAT processes.
In most cases the documentation will be reviewed using informal reviews of people commenting on the problems in documents.
The full committee approach to reviews will be used for a few key documents including:
- All UAT Test plans.
- The Test Designs document containing the UAT Acceptance Criteria.
- Any other documents considered important enough to justify the resources used.
Other Articles on QUALITY Sections
- 2. Introduction gives an overview of the QUALITY process.
- 7. Item Pass/Fail Criteria gives an overview of how to evaluate the testing data to make a pass/fail decision.
- 9. Test Deliverables describes what is produced by the testing process.
- Basics of Project Plans gives further information on item 2:"Long or Unrealistic Timescales" and item 4:"Scope Creep" as two of the five key characteristics of a project plan and the importance of balancing them.
- Verification and Validation has further information on item 6:"Poor Testing" by explaining what the terms Verification and Validation mean.