Levels of Testing & Environment


Levels of Testing

1.      Unit Testing
2.      Module Level Testing
3.      Integration Testing
4.      System Level Testing
5.      User Acceptance Testing





Unit Testing
       Unit testing is the first level of dynamic testing and is first the responsibility of developers and then that of the test engineers. Unit testing is performed after the expected test results are met or differences are explainable/acceptable.

IT performs testing on a unit then that level of testing is known as unit level testing. It is white box testing usually developers perform it.


Module Level Testing

Module is defined as combination of related features to perform a major task in an application.
In this stage the Black Box test Engineers will perform testing on the functional part of the module.
Integration Testing
The primary objective of integration testing is to discover errors in the interfaces between Modules/Sub-Systems (Host & Client Interfaces).
In this stage the developers will develop the interfaces in order to integrate the modules. The white box testers will test those interfaces are working fine or not.
The developers will follow any one of the following approaches to integrate the modules
Approach:
Top-Down Approach
The integration process is performed in a series of 5 steps
  1. The main control module is used as a test driver, and stubs are substituted for all modules directly subordinate to the main control module.
  2. Depending on the integration approach selected ( depth or breadth-first) subordinate stubs are replaced at a time with actual modules.
  3. Tests are conducted as each module is integrated.
  4. One completion of each set of tests, another stub is replaced with the real-module.
  5. Regression testing may be conducted to ensure that new errors have not been introduced.

Bottom-Up Approach.

A bottom-up integration strategy may be implemented with the following steps:
  1. Low level modules are combined into clusters (Some time called builds) that perform a specific software sub function.
  2. A driver ( control program for testing) is written to coordinate test case input and output.
  3. The cluster is tested.
  4. Drivers are removed and clusters are combined upward in the program structure

 Hybrid Approach
This approach is a mixed approach of both Top down and Bottom up approaches.
 Big Bang Approach
Once all the modules are ready at a time integrating them finally is known as big bang approach
System Integration Testing:
It is type of testing in which one will perform some action at one module and check for the reflections in all the related areas.
User Acceptance Testing
The same system testing done in the presents of the user is known as user acceptance testing. It is a black box testing usually done by the Test engineers.

1 comment: