Branch testing requires a model of the source code which identifies decisions and decision outcomes. A decision is an executable statement which may transfer control to another statement depending upon the logic of the decision statement. Typical decisions are found in loops and selections. Each possible transfer of control is a decision outcome.
Test cases shall be designed to exercise decision outcomes.
For each test case, the following shall be specified:- the input(s) to the component;
- identification of decision outcome(s) to be executed by the test case;
- the expected outcome of the test case.