Adaptive approaches to structural software testing (abstract only)

J. Paul Myers · 1987

Structural testing involves the methodical exercising of a program f according to selected criteria for coverage of the program flowgraph (e.g., branch-coverage or statement-coverage). Conventional strategies rely on the pre-selection of paths sufficient to provide the desired coverage, with input vectors then chosen to execute this collection of paths (Figure 1): While selecting a set P is not difficult, finding X can be most challenging — involving Boolean satisfiability of full path predicates, backward substitution, or symbolic execution of the paths, often composed of numerous decisions and assignments (Prather, 1983). During this process of finding X, however, some of the paths in P may prove to be infeasible (i.e., there are no inputs that will cause traversal of those paths). Then, like it or not, we are forced to return to the development of additional paths for P.

Read the paper · More papers on PaperTik