Learn System Analyis and Design
System Testing
   
Home
System Testing
 
Reference Links

Software Testing FAQ

Software Testing

Code Coverage

Fault Injection

White Box Testing

Eqivalence Partioning

 
 
System Testing

A primary purpose for testing is to detect system failures so that defects may be uncovered and corrected.Not all System defects are caused by coding errors. One common source of expensive defects is caused by requirement gaps ie unrecognized requirements, that result in errors of omission .

Static and Dynamic Testing

Static testing doesn't need actual execution of progarm module. Code Reviews, walkthroughs, or inspections are considered as static testing.

Code Review:Code review is the process of making pieces of source code available for other developers to review, with the intention of catching bugs and design errors before the code becomes part of the product. There are 2 types of code reviews,pre-commit and post-commit. Pre-commit review is a form of code review where code is reviewed before going into the codebase.Post-commit review is where the code is reviewed after going into the codebase.
 
Walkthroughs is to describe the process of inspecting algorithms and source code by following paths through the algorithms or code as determined by input conditions and choices made along the way. The purpose of such code walkthroughs is generally to provide assurance of the fitness for purpose of the algorithm or code.
 
Dynamic Testing:Dynamic Testing methods are traditionally divided into black box testing and white box testing.
 
Black Box Testing
 
Black Box testing is testing that occurs from the viewpoint of an end user. Black box tests find bugs such as incorrect functions, interface problems, and database errors In order to make sure that purpose of black box testing is met, various techniques can be used for data selection they are Boundary value analysis , Equivalence partitioning and All-pairs testing.
 
In Equivalence partitioning design documents such as the requirement specification,Design Specification are reviewed.Input data for each input conditions are identified then dividedinto partitions. An input has certain ranges which are valid and other ranges which are invalid.Invalid data does not mean that the data is incorrect, it means that this data lies outside of specific partition.
 
In Boundary value Analysis select values that lie along the extremes. Boundary values include minimum,maximum,just inside boundaries,just out side boundaries, typical values and error values.
 
All-pairs testing or pairwise testing is a combinatorial software testing method that, for each pair of input parameters to a system, tests all possible discrete combinations of those parameters.
 
White Box Testing
 
White box testing traditionally refers to the use of program source code as a as the basis for designing tests and test cases.White-box testing is concerned with testing the implementation of the program. The intent of this testing is not to exercise all the different input or output conditions (although that may be a by-product) but to exercise the different programming structures and data structures used in the program.
 
White box testing can be performed at various level starting from unit to system testing Below are the types of white box testing.
 
Fault Injection:fault injection is a technique for improving the coverage of a test by introducing faults in order to test code paths, in particular error handling code paths, that might otherwise rarely be followed.
 
API Testing :An API (Application Programming Interface) is a collection of software functions and procedures, called API calls, that can be executed by other software applications. API testing is mostly used for the system which has collection of API that needs to be tested. The system could be system software, application software or libraries."API testing" mean to test the individual building blocks of a program or system.
 
Code Coverage: It describes the degree to which the source code of a program has been tested. It is a form of testing that inspects the code directly and is therefore a form of white box testing. Two common forms of code coverage used by testers are statement (or line) coverage and path (or edge) coverage.
 
What are the Levels of testing ?
 
Unit Testing: Unit Testing is primarily carried out by the developers themselves.Deals functional correctness and the completeness of individual program units.White box testing methods are employed.
 
Integration Testing:Deals with testing when several program modules are integrated.
 
Methods for Integration Testing.
 
Regression testing : Change of behavior due to modification or addition is called ‘Regression’. Used to bring changes from worst to least.
Incremental Integration Testing : Checks out for bugs which encounter when a module has been integrated to the existing system.
Smoke Testing : Checks the basic functionality of program. If fails then the program is not sent for further testing.
 
System Testing:Deals with testing the whole program system for its intended purpose.
 
Methods for System Testing
 
Recovery testing : System is forced to fail and is checked out how well the system recovers the failure.
Security Testing : Checks the capability of system to defend itself from hostile attack on intruder programs and data.
Stress Testing : The system is tested for max load and extreme stress points are figured out.
Performance Testing : Used to determine the processing speed.
Installation Testing : Installation & uninstallation is checked out in the target platform
 
 
Acceptance Testing. UAT ensures that the System satisfies the customer requirements. Methods in Aceeptance Testing.
 
Alpha Testing : It is the test done by the client at the developer’s site.
Beta Testing : This is the test done by the end-users at the client’s site. Long Term Testing : Checks out for faults occurrence in a long term usage of the product.
Compatibility Testing : Determines how well the product is substantial to product transition.
   

 
Publish Your Papers Here
We welcome papers on System analysis and design to be published here in this site. Authors can send their papers and brief description to learnsad@gmail.com. Plese include your profile picture

 

 
 
   
All rights reserved