Principles of Software Testing
Q1: Write down principles of software testing. (4 Marks)
1. Testing shows presence of defects
2. Exhaustive testing is impossible
3. Early testing saves time and cost
4. Defect clustering
5. Pesticide paradox
6. Testing is context dependent
7. Absence-of-errors fallacy
Q2: Discuss any five principles of software testing. (4 Marks)
1. Testing shows presence of defects
Testing helps in finding bugs but can't guarantee a completely error-free product.
It proves that defects exist, not that they don’t.
2. Exhaustive testing is impossible
Testing every possible scenario isn't practical due to time and cost.
Therefore, we use risk-based and prioritized testing.
3. Early testing saves time and cost
Detecting issues early in the development process reduces later effort.
Early testing leads to faster and cheaper fixes.
4. Defect clustering
Most defects are often found in a few modules or features.
Targeting these areas improves testing efficiency.
5. Pesticide paradox
Repeating the same tests won’t find new bugs over time.
Tests need to be reviewed and improved regularly.