Seven Principle of software testing
1) Exhaustive testing is not possible:
Exhaustive testing is not possible. Instead, we need the optimal amount of testing based on the risk assessment of the application.
2) Defect clustering:
small number of modules contain most of the defects detected. This is the application of the Pareto Principle to software testing: approximately 80% of the problems are found in 20% of the modules.
3) Pesticide paradox :
the same set of repetitive tests are conducted, the method will be useless for discovering new defects.To overcome this, the test cases need to be regularly reviewed & revised , adding new & different test cases to help find more defects.
4) Testing shows present of defect:
Testing talks about the presence of defects and don’t talk about the absence of defects. i.e. Software Testing reduces the probability of undiscovered defects remaining in the software but even if no defects are found, it is not a proof of correctness.
5) Absence of error:
It is possible that software which is 99% bug-free is still unusable. This can be the case if the system is tested thoroughly for the wrong requirement. Software testing is not mere finding defects, but also to check that software addresses the business needs
6) Early testing:
Testing should start as early as possible in the Software Development Life Cycle. So that any defects in the requirements or design phase are captured in early stages. It is much cheaper to fix a Defect in early stages of testing.
7) Testing is context free:
Testing is context dependent which basically means that the way you test an e-commerce site will be different from the way you test a commercial off the shelf application. All the developed software’s are not identical. You might use a different approach, methodologies, techniques and types of testing depending upon the application type. For instance testing
No comments:
Post a Comment