What exactly software testing life cycle - csmates.com

Software Testing Life Cycle

Except for small programs, systems should not be tested as a single unit.
Software testing life cycle
Large systems are built out of sub-systems, which are built out of modules that are composed of procedures and functions. The testing process should therefore proceed in stages where testing is carried out incrementally in conjunction with system implementation.

However, as defects are discovered at any one stage, they require program modifications to correct them and this may require other stages in the testing process to be repeated.

Errors in program components say may come to light at a later stage of the testing process. The process is, therefore, an iterative one with information being fed back from later stages to earlier parts of the process.

Unit Testing

Unit testing is code-oriented testing, Individual components are tested to ensure that they operate correctly. Each component is tested independently, without other system components.

Module Testing

A Module is a collection of dependent components such as an object class, an abstract data type, or some looser collection of procedures and functions. A module encapsulates related components so it can be tested without other system modules.

Sub-System Testing

This phase involves testing collections of modules, which have been integrated into the sub-system. It is design-oriented testing and is also known as integration testing.

Sub-systems may be independently designed and implemented. The most common problems, which arise in large software systems, are sub-systems interface mismatches. The sub-system test process should therefore concentrate on the detection of interface errors by rigorously exercising these interfaces.

System Testing

The sub-systems are integrated to make up the entire system. The testing process is concerned with finding errors that result from unanticipated interactions between sub-systems and system components. It is also concerned with the detection of interface errors by rigorously exercising these interfaces.

Acceptance Testing

This is the final stage in the testing process before the system is accepted for operational use. The system is tested with data supplied by the system client rather than simulated test data. Acceptance testing may reveal errors and omissions in the systems requirements definition because real data exercise the system in different ways from the test data. 

Acceptance testing may also reveal requirement problems where the system facilities don't really meet the users' needs or the system performance is unacceptable.

Note:- Unit Testing & Module Testing are called Component testing, Sub-system testing is called Integration Testing, But Acceptance and system testing is called User Testing

Post a comment