This is only a Test
/Curriculum
Curriculum
/
The Life of a Testcase
/
The 7 Principles of Software Testing
/
Extract - 8 minutes reading

Extract - 8 minutes reading

Learning Summary: Seven Principles of Software Testing

These notes cover the Seven Principles of Software Testing. They give you a simple framework to shape your test strategy.

1. Testing Shows Presence of Defects

  • Key Idea: Testing finds bugs. It never proves that no bugs exist.
  • Study Point: Run tests that challenge your code. Accept that some bugs may still hide.

2. Exhaustive Testing Is Not Possible

  • Key Idea: You cannot test every possible scenario.
  • Study Point: Use risk analysis and logic to choose tests. Focus on areas that matter most.

3. Early Testing

  • Key Idea: Start testing as soon as possible.
  • Study Point: Involve testers during requirements and planning. Fix issues before they grow.

4. Defect Clustering

  • Key Idea: A few parts of the code often cause most problems.
  • Study Point: Track where bugs appear. Focus more tests on those modules.

5. Pesticide Paradox

  • Key Idea: Running the same tests repeatedly finds fewer new bugs.
  • Study Point: Regularly update your test cases. Add exploratory testing to uncover different issues.

6. Testing Is Context Dependent

  • Key Idea: Your testing methods should match the project type.
  • Study Point: Adjust tests based on the product’s domain and risk level. Use heavier documentation for safety-critical projects and simpler tests for less critical ones.

7. Absence of Errors Fallacy

  • Key Idea: A product with no detected bugs might still miss user needs.
  • Study Point: Look beyond bug counts. Gather user feedback and check performance to measure true value.

Additional Study Points

  • Cognitive Biases: Recognize biases (like confirmation bias) that can affect how you test.
  • Logical Thinking: Use clear, logical steps to select and design tests.
  • Agile Testing Mindset: Work closely with developers and stakeholders from the start.

Quick Reference Table

Principle
Key Point
1. Testing Shows Defects
Finds bugs; never proves complete absence
2. Exhaustive Testing Is Not Possible
Test high-risk areas; use logic to prioritize
3. Early Testing
Involve QA early; catch issues sooner
4. Defect Clustering
Focus on modules with most bugs
5. Pesticide Paradox
Refresh tests to keep finding new bugs
6. Testing Is Context Dependent
Adapt tests to project needs and risks
7. Absence of Errors Fallacy
Zero bugs does not equal a useful product
Logo

Terms and Conditions

Blog

Test Management System

Created with ❤️ by Clean Cut Kft. - 2025

DiscordYouTube