Chapter 1: Fundamentals of Testing Flashcards
Why is Testing Necessary?
- Human Error (mistake) -> Defect (fault, bug) -> Failure.
- Measures the quality of the software.
- Gives confidence in the quality.
- Reduces the overall level of risk.
- How much testing? It depends on risk, safety & project constraints.
Testing Objectives
- Finding Defects.
- Preventing defects.
- Providing information for decision-making.
- Gaining confidence about the level of quality.
7 Testing Principles (TEED PTA)
(TEED PTA)
- Testing shows the presence of defects, not the absence of defects.
- Exhaustive testing is impossible.
- Early testing.
- Defect clustering.
- Pesticide paradox (Tests wear out)
- Testing is context-dependent.
- Absence-of-error fallacy.
The Psychology of Testing
- The mindset of Developer & Tester.
- Communication in a constructive manner.
- Test Independence.
Why we make mistakes
(TTCL)
- time pressure
- tired
- complexity of work products or processes
- lack adequate training
Test Activities and Tasks
(PMA I ET)
- Test planning
- Test Monitoring and control
- Test analysis and design
- Test implementation and execution – Creation of test suites (logical collection of cases)
- Evaluating exit criteria and reporting
- Test closure activities
Best practices while reporting defects
- Communicate findings in a neutral, fact focused way. Don’t criticize.
- Be pessimistic and start with collaborations rather than battles
Failures are caused by ___
- Defects
- Environment conditions
- Malicious damage
How much testing is enough depends on ___
- Technical and business risks
- Project constraints (time & budget)
Why we do testing
- Product satisfy requirements
- Fit for purpose
- Detect defects
What is Testing?
Software testing is a set of activities to discover defects and evaluate the quality of software artifacts.
These artifacts, when being tested, are known as test objects.
Testing vs QA
Testing is a form of quality control (QC)
QC is a product-oriented, corrective approach that focuses on those activities supporting the achievement of levels of quality.
QA is a process-oriented, preventive approach that focuses on the implementation and improvement of processes.
Failures
Errors and defects are not the only cause of failures.
Failures can also be caused by environmental conditions
Root cause
A root cause is a fundamental reason for the occurrence of a problem
Testing shows the presence, not the absence of defects.
Testing can show that defects are present in the test object, but cannot prove that there are no defects.
Testing reduces the probability of defects remaining undiscovered in the test object, but even if no defects are found, testing cannot prove test object correctness.