Monday, 30 July 2012

Testing Activities in CCFD


Testing a large system is a complex activity and like any complex activity. It has to be broke into smaller activities. Thus incremental testing was performed on the project i.e., components and subsystems of the system were tested separately before integrating them to form the subsystem for system testing.
7.2.1 Unit Testing
Unit testing focuses on the building blocks of the software system that is the objects and subsystems.  There are three motivations behind focusing on components. First unit testing reduces the complexity of overall test activities allowing focus on smaller units of the system, second unit testing makes it easier to pinpoint and correct faults given that few components are involved in the rest.  Third unit testing allows parallelism in the testing activities, that is each component are involved in the test.  Third unit testing allows parallelism in the testing activities that is each component can be tested independently of one another.
The following are some unit testing techniques.
Equivalence Testing: It is a black box testing technique that minimizes the number of test cases.  The possible inputs are partitioned into equivalence classes and a test case is selected for each class. In this project, the system is divided into equivalence classes and tested.

Boundary Testing: It is a special case of equivalence testing and focuses on the conditions at the boundary of the equivalence classes. Boundary testing requires that the elements be selected from the edges of the equivalence classes. In this project the system shows an error message when no machine or job is selected.

Path Testing: It is a white box testing technique that identifies faults in the implementation of the component the assumption here is that exercising all possible paths through the code at least once.  Most faults will trigger failure. This acquires knowledge of source code.

No comments:

Post a Comment