10.12.2012 Views

Domain Testing: Divide and Conquer - Testing Education

Domain Testing: Divide and Conquer - Testing Education

Domain Testing: Divide and Conquer - Testing Education

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Howden (1976) defined a path this way: “A path through a program<br />

corresponds to some possible flow of control” (p. 209).<br />

Kaner et al. (1999) defined a path as “…a sequence of operations that runs<br />

from the start of the program to an exit point. This is also called an end-to-end path.<br />

A subpath is a sequence of statements from one place in the program to another.<br />

Subpaths are also called paths” (p. 43).<br />

Path Condition: IEEE Std. 610.12 (1990) defined the path condition as “A set of<br />

conditions that must be met in order for a particular program path to be executed”<br />

(p. 55).<br />

Path Analysis: This has been defined by IEEE Std. 610.12 (1990) as “Analysis of<br />

a computer program to identify all possible paths through the program, to detect<br />

incomplete paths, or to discover portions of the program that are not on any path”<br />

(p.55).<br />

In the path analysis approach to doing domain testing, partitioning of the<br />

input domain is done based on paths. To underst<strong>and</strong> what is meant by path in this<br />

context, consider an example of a very simple program:<br />

If x < 10 then<br />

Else<br />

Event A occurs<br />

Event B occurs.<br />

Depending on what the value of the variable x is, the program would either<br />

go down the path that leads to the execution of event A or would go down the path<br />

that leads to the execution of event B.<br />

In the path analysis approach to doing partition testing, the input domain<br />

corresponding to a program would be the set of all paths that the program can take.<br />

14

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!