Page 143 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 143
Software Testing and Quality Assurance
There is a GUI interface with multiple tabs for entering information and only
one save button. The system will work correctly if the order of entering
information is tab 1, tab 2, and tab 3, but may not work properly if the sequence
is tab 2, tab1, and tab3.
3. Random Data Collection from Existing Database: This is another type of random testing
technique.
If a tester wants to test the functionality of an application, the tester would
randomly select members from existing system database and verify that the
new functionality works as expected.
Given below are a few types of algorithm used in random testing:
1. Uniform random walks in which every trace may have the similar probability to occur.
2. Randomized quasi-random sequences.
3. A path-oriented random test data generator.
4. Sequence of random test data that can perform only a subset of paths in a program.
The random testing inputs will be able to provide proper results only if:
1. Correct algorithm is used.
2. Inputs are distributed evenly over the input domain.
3. The risk factors are considered during the distribution of inputs.
Random testing is not only considered as a useful testing technique in itself, but it can also be used in
many other testing techniques. Also, random testing has high failure detection effectiveness during GUI
testing.
Another method of testing is the adaptive random testing. Adaptive Random Testing (ART) indicates a
family of testing algorithms with better performance compared to pure random testing and with respect
to the number of test cases essential to detect the first failure. This testing technique is also known as the
Black Box testing technique and is based on the assumption that random testing failure detection
efficiency can be improved by evenly distributing test cases in the input domain.
When selecting the tool to be used to generate random numbers, the tester
should keep in mind:
1. The type of data required
2. The range needed (minimum to maximum)
3. The way of distribution of the data
A log file should exist to store the seed value before using it. This helps in reproducing the error, in case
the computer or application fails radically. The quality of random testing can be verified using a code
coverage tool. Every random test generator is expected to identify a different set of bug.
Prior to using the random test generator for testing, the tester must open a log file and
verify that the data generated is according to the tester’s needs.
Random testing has gained immense popularity in the field of gaming and protocol testing. This is
because random testing has the power of running a large number of test cases with high failure
detection effectiveness. Though we do not acquire perfect or optimal results with random testing, we
can obtain good results at a low cost. In some circumstances, random testing methods are considered
136 LOVELY PROFESSIONAL UNIVERSITY