Testing

Inputs

Implemented system
All specifications and documentation

Outputs

Finalized test plans and their test cases
Compilation of test results and follow-up
Tested and corrected system

Primary Participants

Testing organization with support from the development organization.

Parallel Activity

During the testing phase the organizations and individuals that are responsible for the deployment and maintenance of the system will finalize their planning and preparation.

Testing Overview

Defintions:

Test case - A single set of procedures for testing some finite functionality of a system.

Test plan - A document that states who, what, and how tests will be performed. The test plan defines the committee in charge of managing the execution of the test cases.

This committee writes the test plan and accompanying test cases, oversees and approves the execution of the test cases, approves and recommends fixes for found errors, and collects and compiles all the resulting documentation from the execution of the test cases.

The test plan defines the following:

Test plan methodology.
The parts of the system to be tested.
Step by step procedures of the testing committee.

Review Against Requirements

As part of the testing phase, the implemented system's functionality should be traced against the business and functional requirements. A preliminary review may be held before testing begins, but testing results will also be useful in determining whether the system is successful in meeting all the requirements.

Systems testing

Systems testing will be performed informally by the development team as they incrementally implement the systems they are responsible for.

The testing organization will develop more rigorous test plans that test each component of the overall application in isolation, or where systems are heavily co-dependent, will test those systems as a unit.

In addition to testing basic functionality, systems tests should stress and load test each system in isolation.

The functional specification, system architecture design document, and detailed design document are the primary source documents for the development of the systems tests.

Integration testing

Integration testing tests the entire application as a set of cooperating systems. A wide variety of test cases will be developed to test front to back functionality as well interdependent functionality.

In particular, integration testing should:

test the installation procedures and utilities
stress and load test the application as a whole
test the administration utilities
test the recovery and redundancy facilities

The functional specification, analysis document, system architecture design document, and detailed design document are the primary source documents for the development of the integration tests.

User testing

User testing is similar to integration testing in that it tests the system as a whole, but it is done later in the testing phase when the system is more stable. User tests focus on functionality from the user's and system administrator's points of view.

User tests should not only test functionality and correctness of the system, but should also painstakingly test and review the user boundaries. User boundaries include the user interfaces, reports, import/export/clipboard support, help system, error messages, and user manuals.

The business specification, functional specification, and analysis document are the primary inputs for user tests.

Validation testing

Validation testing is similar to user testing and may use many of the same tests. However, validation testing is done on a completely locked down system that is kept in an isolated, secure environment. One of the main purposes of validation testing is to prove that a system produces the correct results. One characteristic of validation testing is that large, realistic before-and-after business models must be created separately from the system under test. These business models are then used to populate the system with pre-testing data and to compare against data resulting from performing validation test procedures.

The business specification, functional specification, and analysis document are the primary inputs for validation tests.

Regression testing

Regression testing is usually performed on each additional update or revision of a system. This type of testing should use a wide selection of tests that can be combined from systems, integration, user, and validation test suites.

Business Specification Analysis Detailed Design Testing Post Study Functional Specification Architecture Design Implementation Deployment and Maintenance HOME

Send E-Mail