Information Technology Reference
In-Depth Information
Fig. 4.1
IPO algorithms
Algorithm 3 The IPOG Algorithm Framework
1: Denote the parameters in some order, as p 1 , p 2 ,... p k
2: Set test _ suite as all combinations of parameter values p 1 , p 2 ,..., p t
3: for i = t +
1to k do
4: Let
π
be the set of t -way combinations of values involving parameter p i and t
1 parameters
1 parameters
5: // horizontal extension for parameter p i
6: for each test
among the first i
τ = (v
,v
,...,v
)
in test _ suite do
1
2
i
1
τ = (v
τ covers the
7:
Choose a value
v
i of p i and replace
τ
with
,v
,...,v
,v
)
so that
1
2
i
1
i
greatest number of target combinations in
π
τ
8:
Remove from
π
the target combinations covered by
9:
end for
10:
// vertical extension for parameter p i
11:
for each combination
σ
in
π
do
12:
if there exists a test that already covers
σ
then
13:
Remove
σ
from
π
14:
else
15:
Change an existing test, if possible, or otherwise add a new test to cover
σ
and remove it
from
π
16: end if
17: end for
18: end for
have some target combinations uncovered, so the vertical extension stage is used to
cover these target combinations by modifying existing test cases or adding new test
cases. After the for-loop in line 3 terminates, the resulting array is a covering array
of all the k parameters of strength t .
In the vertical extension stage, when adding a new test case to cover a target
combination
σ
, only the parameters in
σ
are actually assigned their respective values
in
σ
, other values are don't-care values , denoted by “
”. When modifying a test case
to cover
σ
, the algorithm first finds a test case that is consistent with
σ
, which means
for each parameter in
σ
, its value in the test case is either the same with its value in
σ
, or a don't-care value.
 
Search WWH ::




Custom Search