You will gain nothing by reducing the number of tests. It’s better to use simple, obvious tests than to do the job with fewer, more cumbersome tests. In some cases, even 10 tests are enough but you need to use more if in so doing the tests become clearer and more directly associated with the requirements.

The selection of test paths and their sensitization are often performed simultaneously, since the correlation of predicates can prevent the program from passing through arbitrarily chosen paths. Although this is a good practice, it is not good didactic work, so we will first select the test paths, and then, will sensitize them.

We build a path, segment by segment, starting with the entry node (input node) and proceeding to the exit node (output none). We pick on our segments, starting with the points where the control flows diverge from the single node, and continue until the control flows again converge into one node. Examples: 32-33a4, 33a4- 33ab, 33s-34. We act like so that to build paths by combining previously selected segments. At that you can combine path segments only in such single-node convergence points. In each predicate, we perform a branch, choosing possible values (for example, TRUE / FALSE), thereby splitting the paths built up to this point.

There is no choice in nodes 32 or 33a1; all our tests must begin with nodes 32,33a1.

The first predicate is node 33a2. Branching here can be selected as TRUE or FALSE, resulting in the following two test families:

*A1: 32. 33a1. 33a2 (T). ЗЗаЗ. 33a4*

*A2: 32. 33a1. 33a2 (F). 33a4*

The next predicate is node 33a4 (blind?). It, obviously, is independent of the previous predicate at 33a2 (65 years or older?). Therefore, although the paths are again split, there is no need to add this to the tests. For definiteness, we assign the TRUE test cases to path A1, and the FALSE ones to path A2, to yield.

*A1: 32, 33a1, 33a2 (T), ЗЗаЗ, ЗЗа4 (T), 33a5, 33ab.*

*A2: 32, 33a1, 33a2 (F), 33a4 (F), 33ab.*

At the 33ab, we ask whether the spouse is 65 years old, and at 33a8 we ask whether the spouse is blind. Considering these first four predicates, you can see that they provide a total 16 possible paths through this specification segment. Of course, we can prepare 16 tests at this point, checking all 16 combinations of these four predicates, but this would be a bad parlay. Thus, we would try to test for unlikely errors. In fact, only two path segments are required to obtain link cover from node 32 to 33b. Which of them should we take? Any of the two complementary paths will do. The paths from 32 to 33b can lead to the count of zero to four.

There is something that might be of interest to you.

Testmatick is an independent qa and testing enterprise delivering **software performance testing services** globally. Its experienced and competent personnel helps to resolve performance issues for everyone to launch high quality applications.

## Be the first to comment on "Selecting Test Paths"