Logo

dev-resources.site

for different kinds of informations.

7 Principles of Software Testing

Published at
9/20/2021
Categories
softwaretesting
sdlc
sqa
softwarequality
Author
qaiserabbas
Author
11 person written this
qaiserabbas
open
7 Principles of Software Testing

According to International Software Testing Qualification Board there are seven principles that should be considered when developing the testing strategy for a software product.

1) Testing shows presence of defects

By testing you can show presence of defects in a product but you can never prove that the product under test is defect free.

2) Exhaustive testing is impossible

Testing all possible scenarios (all combinations of preconditions and inputs) is not feasible. Techniques like risk analysis should be used to prioritize and focus the testing efforts.

3) Early testing

The testing activities should be started as early as possible during the software or system development life cycle. The cost to fix a bug increases exponentially if the bug is found in a later phase of the development life cycle.

4) Defect clustering

In a project, a small number of the module can contain most of the defects. Pareto Principle to software testing state that 80% of software defect comes from 20% of modules.

5) Pesticide paradox

The test cases should be reviewed and updated on regular basis. New tests should be developed to exercise new parts of the software or system. If this is not done and the same tests are repeated again and again eventually no new bugs will be found, but this does not mean that the system is defect free. Testing should focus on continuous improvement during the complete development life cycle.

6) Testing is context dependent

The testing approach depends on the context of the software developed. Different types of software need to perform different types of testing. For example, The testing of the e-commerce site is different from the testing of the Android application.

7) Absence of errors fallacy

If a systems does not fulfill the user needs and expectations then having a bug free system does not help. Functional testing and a deep understanding of the customer expectations is a must during the development life cycle.

softwarequality Article's
29 articles in total
Favicon
Microservices Testing: Feature Flags vs. Preview Environments
Favicon
How Test-Driven Development (TDD) Enhances Code Refactoring and Maintains Software Quality
Favicon
Functional vs Non-Functional Testing: Key Differences and Their Impact on Software Quality
Favicon
Understanding Software Quality Assurance: Importance, Processes, and Best Practices
Favicon
πŸ€” Is It Possible to Achieve 100% Test Automation?
Favicon
Advanced Techniques for Elevating Software Quality in Development
Favicon
The challenge for CIOs
Favicon
Software Quality Infrastructure Components
Favicon
The time at the expense of software quality
Favicon
Exploratory Testing | Streamlining Exploratory Testing with TAST
Favicon
Software Quality Assurance Best Practices for 2023
Favicon
Usability and UX
Favicon
SIPSA | Software Quality in the Digital Era
Favicon
An Introduction To Software Design Patterns
Favicon
Cargo Cult Quality
Favicon
Testing the metaverse
Favicon
Programming Tip #5: Sleep
Favicon
7 Principles of Software Testing
Favicon
SPHERICAL QUALITY | Software quality in the Digital Era
Favicon
What's so bad about inheritance in comparison to composition?
Favicon
Software Quality?
Favicon
The Software Quality Cost Myth
Favicon
Software quality assurance in practice
Favicon
Four pillars to improve the quality of your E-Commerce Project orΒ Module
Favicon
You Can't Test Quality Into a Product
Favicon
Strongholds of confidence: self-testing your database
Favicon
Overtime Hurts Your Software & Your Team
Favicon
Handling Safe Destructuring in TypeScript
Favicon
10 points for better software quality

Featured ones: