2. Software testing procedures are modernized
day by day. Some basic principles of testing
have also been set. These principles can be
said as a basic guideline for both, testing and
coding based on theoretical ideas and
practical experience.
3. 7 principles
Testing shows presence of errors
Exhaustive testing is not possible
Early testing
Defect clustering
Fading effectiveness
Testing depends on context
False conclusion: no errors equals usable
system
4. Testing shows presence of errors
Testing proves the presence of errors
It is important to design test cases which find
defects as many as possible.
5. Exhaustive testing is not possible
It is impossible to test all possible
combinations of input cases, data and
sceneries.
Risk and priorities are used to concentrated on
the most important aspects of testing.
6. Early testing
Prepare testing for each level of development
cycle i.e. it’s important to test early and
regularly.
When defects are found earlier in the lifecycle,
they are much easier and cheaper to fix these.
7. Defect clustering
There is no equal distribution of errors within
one test object.
The place where one error occurs, it’s likely to
find some more.
It’s more like 80-20 Pareto Principle.i.e.20
percent of the defects causing 80 percent of
the problems.
8. Fading effectiveness
Same test won’t work for long time (Pesticide
Paradox).
When any modification is done, the regression
testing is necessary.
9. Testing depends on context
Different methods, techniques, types of testing
is related to the type and nature of application.
10. False conclusion: no errors equals
usable system
Absence of error fallacy.
Just because testing didn’t find any defect in
the software doesn’t mean the software is
ready to be shipped.
User requirements should be matched.