Testing
Testing
Validation
(focus on product quality)
Are we building the right product?
Validation is actual testing
Testing Objectives
In an excellent book on software testing, Glen Myers
[MYE79] states a number of rules that can serve
well as testing objectives:
1. Testing is a process of executing a program
with the intent of finding an error.
2. A good test case is one that has a high
probability of finding an as-yet undiscovered
error.
3. A successful test is one that uncovers an asyet-undiscovered error.
Validate the quality of software using the minimum
time, cost and efforts.
Testing principles:
Following are the basic principles of testing which every
software engineer must follow before applying methods to
design test cases.
All tests should be traceable to customer requirements.
Tests should be planned long before testing begins.
The Pareto principle applies to software testing. i.e., 80
percent of all errors uncovered during testing will likely be
traceable to 20 percent of all program modules.
Testing should begin in small and progress towards in
large. i.e., from module level testing towards the entire
system testing.
Exhaustive testing is not possible.
The tests should be conducted by an independent third
party for the test to be more effective.
Testing Life-Cycle
e.g.: Verification