Software testing is a creative and intellectual engagement. It is not easy at all to create right and effective tests. Below are the principles of testing that have been developed for the last 40 years and they are the general guidelines for software testing service.
Testing Helps to Detect Defects
Tests show the presence of software defects, but they cannot prove their absence. However, it is very important to write test cases that will help to find as many bugs as possible. Thus, with appropriate test coverage, testing allows to reduce the probability of the existence of software defects. At the same time, even if the defects have not been found during a testing process you cannot be sure that they are absent in the software product.
Exhaustive Testing is Impossible
It is not possible to carry out exhaustive testing that could cover all combinations of the user’s input parameters and the states of a software system, except for very simple cases.
Early Testing
Testing process should start as early as possible in software development lifecycle and it should be aimed at reaching definite goals.
Accumulation of Defects
Different system modules may contain a various number of defects – namely,a defect density in different elements of the system may vary. Testing efforts must be distributed in proportion to actual defect density.
Pesticide Paradox
Running the same tests over and over again, you will discover that they find less and less new defects. Since the system evolves, many of the previously detected defects are corrected and old test cases do not work anymore.By the way, software testing consulting service is meant to provide the customers with test advisory service in the area of methodology, testing strategy, test competency evaluation throughout the entire development lifecycle so that to improve software quality.
Testing Depends On the Context
The choice of methodology, technique and type of testing to use will directly depend on the nature of the system itself. For, instance, medical office software requires more careful examination than a computer game.
Misconception About the Absence of Errors
The fact, that testing has not showed software defects does not mean that the program is ready for production. Finding and fixing defects will be a useless procedure if the system appears to be inconvenient for its user.
And there are more important principles:
- testing is to be done by specialists from independent software testing company;
- involve the best professionals in testing;
- test not only positive but also negative scenarios;
- do not admit changes in the program during testing.
Comments are closed.