This document discusses an introduction to software testing. It outlines the key outcomes of understanding software faults, their sources, and definitions of software testing and verification and validation. Some main principles of software testing are described, including that testing finds bugs, increases confidence, but cannot find all defects. Standard testing activities are listed as modeling the environment, selecting test scenarios, testing and evaluating, and measuring progress.
2. 2 Outcomes:
Understanding the concept of software faults.
Some sources of software faults including examples.
Definition of software testing including verification and validation.
Some main principles of software testing.
Why to test?
Testing Activities.
3. 3 Understanding software faults
Faults in software may cause:
Loss incurred by companies.
Loss of lives.
Loss of confidence of stakeholders
4. 4 Sources of faults
Improper requirement engineering.
Flaws in design.
Inadequate testing.
Evolution of software: addition of new features may introduce new faults.
5. 5 Software Testing
A process or set of activities to prove quality of software to stakeholders.
Verification and validation is part of testing.
6. 6 Verification(product right)
X
SOFTWARE X FUNCTIONALITY
7. 7 Validation (Right product)
Making sure software provide traceable requirements.
8. 8 Principles
Good test case helps to find bugs.
Successful test helps to find undiscovered errors.
Testing is destructive and is followed by debugging.
Testing cannot find all defects.
9. 9 Testing & confidence
Increase % bugs found, the higher is the confidence.
10. 10 Standard Testing Activities
Model the environment.
Select test scenarios.
Test and evaluate.
Measure testing progress.