What
are Principles of testing?
There are
seven principles of testing. They are as follows:
1) Testing shows presence of defects: Testing can show the defects are present, but cannot
prove that there are no defects. Even after testing the application or product thoroughly we cannot say
that the product is 100% defect free. Testing always reduces the number of undiscovered defects remaining in the software but
even if no defects are found, it is not a proof of correctness.
2) Exhaustive testing is impossible: Testing everything including all combinations of
inputs and preconditions is not possible. So, instead of doing the exhaustive
testing we can use risks and priorities to focus testing efforts.
3) Early testing: In the software development life cycle testing activities should start as early as possible and
should be focused on defined objectives.
4) Defect clustering: A small number of modules contains most of the
defects discovered during pre-release testing or shows the most operational
failures.
5) Pesticide paradox: If the same kinds of tests are repeated again and
again, eventually the same set of test cases will no longer be able to find any
new bugs. To overcome this “Pesticide Paradox”, it is really very important to
review the test cases regularly and new and different tests need to be written
to exercise different parts of the
software or system to potentially
find more defects.
6) Testing is context depending: Testing is basically context dependent. Different
kinds of sites are tested differently. For example, safety – critical software
is tested differently from an e-commerce site.
7) Absence – of – errors fallacy: If the system built is unusable and does not fulfil
the user’s needs and expectations then finding and fixing defects does not
help.
0 comments:
Post a Comment
Note: only a member of this blog may post a comment.