Pages

Monday, September 13, 2010

Types of Testing Used in Online Mobile Store

Testing is the most important part of system development. Every system must be tested for its performance, errors, and efficiency. The site was tested in 3 phases:
  • Unit/module testing
  • Beta testing within local network
  • Testing under a real environment
Unit testing
It focuses on the smallest unit of software design - the software component or module. Using the component level design description as a guide, important control paths are tested to uncover errors within the boundary of the module. The relative complexity of tests and uncovered errors is limited by the constrained scope established for unit testing. The unit test is white-box oriented, and the step can be conducted in parallel for multiple components. The tests that occur as part of unit tests are listed below
  • Module Interface is tested to ensure that information properly flows into and out of the program unit under test. Tests of data flow across a module interface are required before any other test is initiated. If data does not enter and exit properly, all other tests are moot.
  • Local Data Structures are examined to ensure that data stored temporarily maintains its integrity during all steps in an algorithm's execution. 
  • Boundary Conditions are tested to ensure that the module operates properly at boundaries established to limit or restrict processing. 
  • Independent Paths are exercised to ensure that all statements in a module have been executed at least once. 
  • Error Handling Paths are also tested.
Selective testing of execution paths is an essential task during the unit test. Basis path and loop testing are effective techniques for uncovering a broad array of path errors. Among the more common errors in computation are
- misunderstood or incorrect arithmetic precedence,
- mixed mode operations
- incorrect initialization
- precision inaccuracy
- incorrect symbolic representation of an expression.

Comparison and control flow are closely coupled to one another (i.e., change of flow frequently occurs after a comparison). Test cases should uncover errors such as
- comparison of different data types
- incorrect logical operators or precedence
- expectation of equality when precision error makes equality unlikely
- incorrect comparison of variables
- improper or non-existent loop termination
- failure to exit when divergent iteration is encountered
- improperly modified loop variables

Beta testing within local network

After testing, the website was hosted on the local server of 3 computers and tested for the functionality performance and errors. And the errors found were fixed and tested again. The methods for upgrading the performance and functionality were taken.

Testing under a real environment

After the site was tested in house, the site was hosted for testing under a real environment. And a discussion board named “feedback” was hosted under the forum and the selected 15 beta members were requested to use the site and report any errors or suggestion at the feedback forum. This feedback was used for modifications, and fixing errors.