Lecture Notes for CS 325
The Testing Process, 29 March 2000
- the testing process - first crack at the whole system, last crack at
finding errors
- regression testing - the need to keep on testing
- costly and difficult - budget 25% to 40% of total resources to testing
- how to test
- different test types are good at catching different things
- different test types are good on different types of code
- match tests to expected errors and system locations
- combine various test types at various intensities to achieve overall
coverage objectives
- economic criteria are often definitive - $/fault found
- when to test
- unit, integration, system, and acceptance testing
- unit testing, done during coding by coders in isolation
- integration testing, done to test the system design
- system testing, done to test the system requirements
- acceptance testing, done by the client to test the development
- regression testing - you never really stop testing
- the initial testing establish a baseline against which system changes
can be retested
- an enormous amount of documentation is needed for regression testing
- test plan, test cases, test scripts, test results, test analysis
- managing all this documentation is another big problem -
configuration management
- the test plan - defines the whole scope of testing for the project
- parallel and during the project development
- describes testing units, tested features, testing approaches, test
deliverables, schedule, personnel
- test units comprise modules to be tested and the test data
- defining the features to be tested
- determining the testing criteria guiding the tests
- what will assure the customer of sufficient testing
- schedule testing and its affects on other parts of development
- how many people of what type doing what
- test case specifications - how does each test get carried out
- a refinement of the test plan
- determine test case criteria and generate appropriate test cases
- measure the test cases against the criteria
- review the test cases
- writing documentation - input, process, output, analysis
- test case specifications are the script for actual testing
- testing and analysis
- analyze the test case specifications
- construct the testing harness - stubs, drivers, data collectors
- documentation - test log, test summary report, error report
- post-mortem analysis - determining the test case spec effectiveness
- faults per test and faults overall
- testing effort as a portion of over-all effort
- computational resources
- punishment for the guilty - tracking faults back to errors
This page last modified on 27 March 2000.