Path Testing Criteria
- Any testing strategy based on paths must at least both exercise every instruction and take branches in all directions
- A set of tests which perform this strategy is not complete in an absolute sense, but it is complete in the sense that anything less must leave something untested
- So we have explored three different testing criteria or strategies out of potentially infinite family of strategies They are
Path Testing:
- In Path Testing , all the possible control flow paths through the program are executed
- Typically, this is restricted to all possible entry/exit paths through the program
- It this prescriptions achieved then 100% of path coverage is achieved. This is the strongest criterion in the path testing strategy family
- It is generally impossible to achieve
Statement Testing
- In Statement Testing, all the statements in the program are executed at least once. If enough tests are done to achieve this then 100% statement coverage is achieved
- An alternative equivalent characterization say that the 100% node coverage is achieved and it is denoted by C1
- This is the weakest criterion in the family: testing less than this, for new software is unconscionable (Unprincipled or can not be accepted) and should be criminalized
Branch Testing
- Execute enough tests to assure that every branch alternative has been exercised at least once under some test
- If this prescription is achieved by performing enough tests then 100% branch coverage is achieved
- An alternative characterization is to say that we have achieved 100% link coverage
- For structured software, branch testing and therefor branch coverage strictly includes statement coverage
- We denote branch coverage by C2
0 comments:
Post a Comment