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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Appendix A: Equivalence Class Analysis Heuristics (continued)<br />

Variable Equivalence<br />

classes<br />

x<br />

Exclusive ranges (Open-ended):<br />

Consider a variable ‘y’ which can take values only between the range v1 to v2, the end<br />

points being exclusive.<br />

Analysis:<br />

Step 1: Represent this variable as a mathematical range expression.<br />

v1 < y < v2<br />

Test case<br />

(Best<br />

representatives)<br />

Step 2: Identify the risks associated with this variable.<br />

• Failure to process values between v1+1 <strong>and</strong> v2-1 correctly<br />

• Mish<strong>and</strong>ling of values below v1+1<br />

• Mish<strong>and</strong>ling of values above v2-1<br />

Step 3: Determine the input domain for this variable<br />

The input domain is the set of all possible values that can ever be inputted to the<br />

variable ‘y’.<br />

Step 4: Partition the input domain based on the identified risks.<br />

The following is the corresponding equivalence class table for this example:<br />

© Sowmya Padmanabhan, 2003<br />

Risk Notes<br />

v1 -- v2 v1, v2 1) Failure to process values between v1<br />

<strong>and</strong> v2 correctly<br />

2) Mish<strong>and</strong>ling higher <strong>and</strong> lower<br />

boundary values.<br />

< v1 v1–1 1) Mish<strong>and</strong>ling of values below v1<br />

2) Mish<strong>and</strong>ling of values just beneath the<br />

lower boundary.<br />

> v2 v2+1 1) Mish<strong>and</strong>ling of values above v2<br />

2) Mish<strong>and</strong>ling of values just above the<br />

upper boundary.<br />

2

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

Saved successfully!

Ooh no, something went wrong!