Testing Services:
Testing is the process of checking a set of input data to a given piece of software that will cause the software to exercise some portion of its code to produce output. It is a time and quality complexity i.e. Best results in minimum time. The developer of the software can then check that the results produced by the software are according to user's requirement. A successful test is one that uncovers an as yet undiscovered error. A bug found and fixed during the early stages when the specification is being written might cost next to nothing, the same bug, if not found until the software is coded and tested, might cost 10 times. If a customer finds it, the cost 100 times. There are many approaches to software testing.
Static Testing: All the Verification activities fall into the category of Static Testing. During static testing, the person testing the software has a checklist to check whether the work done is according to the set of standards of the organization. These standards can be for Coding, Integrating and Deployment.
Dynamic Testing: Dynamic Testing involves working with the software, giving input values and checking if the output is as per the user requirements. Unit Tests, Integration Tests, System Tests and Acceptance Tests are few of the Dynamic.
Unit Testing: The goal of unit testing is to isolate each part of the program into sub modules and show that the individual parts or sub modules are correct.
Integration Testing: After unit testing all the modules are integrated as one module and the complete module is tested.
Blackbox Testing: Black box testing is also known as external the testing. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid input and determines the correct output. There is no knowledge of the test code's internal structure. This method of test design is applicable to all levels of software testing: unit, integration, functional testing, system and acceptance. Typical black box test design techniques include:
Equivalence partitioning: This method divides the input domain of a program into classes of data from which test cases can be derived. Equivalence partitioning strives to define a test case that uncovers classes of errors and thereby reduces the number of test cases needed.
Boundary value analysis: This method leads to a selection of test cases that exercise boundary values. As if input range bounded by a and b, test cases should include values a and b and just above and just below a and b respectively.
Pairwise testing: This method leads to selection of test cases with different pairs of data. For example if any input requires to select a pair of numbers, then all suitable pairs are tested.
White Box Testing: White box testing is also known as internal testing. Test cases are based on internal structure. It requires programming skills to identify all paths through the software. The tester chooses test case inputs to exercise paths through the code and determines the appropriate outputs.
Typical white box test design techniques include:
|