1.3 Testing Principles Flashcards
What does the principle “Testing shows the presence, not the absence of defects” mean?
This principle means that testing can reveal defects in a test object, but it cannot prove that there are no defects. Even if no defects are found, testing cannot confirm that the test object is defect-free.
Why is exhaustive testing considered impossible?
Exhaustive testing is impossible because testing everything is not feasible except in trivial cases. Instead, test techniques, test case prioritization, and risk-based testing should be used to focus testing efforts.
How does early testing save time and money?
Early testing saves time and money by identifying and removing defects early in the process, which prevents them from causing further defects in derived work products and reduces the cost of quality later in the SDLC.
What is the significance of the “defects cluster together” principle?
This principle indicates that a small number of system components usually contain most of the defects or are responsible for most operational failures. This is an illustration of the Pareto principle and is important for risk-based testing.
What happens to tests when they are repeated many times?
When tests are repeated many times, they become less effective at detecting new defects. This effect can be mitigated by modifying existing tests, creating new tests, or, in some cases, repeating the same tests in automated regression testing.
What does it mean that “Testing is context dependent”?
This principle means that there is no single universally applicable approach to testing. Testing must be adapted to different contexts, as it is done differently depending on the situation.
What is the “absence-of-defects fallacy”?
The absence-of-defects fallacy is the misconception that thoroughly testing all specified requirements and fixing all defects will ensure the success of a system. Even with no defects, a system may still not fulfill users’ needs or achieve business goals.