What is white-box testing?
A method of testing software that tests internal structures or workings of an application, as opposed to its functionality (i.e. black-box testing). In white-box testing an internal perspective of the system, as well as programming skills, are used to design test cases.
The difference between Black-box Testing and White-box Testing:
Logic Coverage:
- 1 Statement Coverage
Statement Coverage is to design a number of test cases,making each executable statement implement at least once.- 2 Decision Coverage
To design a number of test cases,make the true and false branches of each judgement may go through at least once.- 3 Conditions Coverage
Conditions Coverage is to design a number of test cases,make possible values of each condition in the procedure may implement at least once.- 4 Condition/Decision Coverage
To design sufficient test cases,make all possible conditions of each judgement implement at least once,and make all possible results of each judgement implement at least once.- 5 Condition Combination Coverage
Condition Combination Coverage is to design sufficient test cases,make all possible condition combinations of each judgement implement at least once.If the test cases meet the condition combination coverage, then they certainly meet the decision coverage, condition coverage and condition/decision coverage.We can use truth table to help us do condition combination coverage.- 6 Path Coverage
To Design enough test cases to cover all possible path in the procedure.- 7 Complete Coverage
Complete Coverage = condition combination coverage + path coverage