What is Exhaustive Testing?
Exhaustive testing is a test approach in which all possible combinations inputs or preconditions are used for testing. It is a testing or quality assurance approach in which all possible combinations of scenarios, type of input as well as every permutation and variation of use/test cases are used for testing.
It means testing the functionality with all possible valid and invalid data.
It is also called as complete testing.
Complete, or exhaustive, testing means there are no undiscovered faults at the end of the test. (Problems must be know at the end of the test)
Because of pressure of time boxed and budget, effort put into the quality assurance and testing activities need to be tailored to the risks and cost associated with the project.
It test all probable test execution environments, operations and input / output
Why Exhaustive Testing Is Not Practical?
– Have to work under strict deadlines and have to complete other testing activities
– Pressure of time boxed and budget
– Design might be too intricate to perform test
– It is not feasible to test all probable test execution environments, operations and input / output
Exhaustive Testing or complete testing is impossible because testing everything (all possible combinations inputs or preconditions) is not feasible to test except trivial cases. Instead of exhaustive Testing or complete testing, we can use risk and priorities to focus testing efforts, activities and quality assurance.
IF someone will ask is Exhaustive testing is possible? Then answer should be NO
Example -: In Exhaustive testing or complete testing, to find 5 digits alphanumeric (Kum.1) with special symbol password need to test all possible combinations and preconditions like 26 uppercase, 26 lower case, 10 numbers including zero and at least 6 special symbols. All tests (combinations and permutations) are difficult to test in time bound.