SWE 437 In Class Exercise # 14
Input Space Partitioning
Names:
Instructions: Work with your neighbors in groups.
This is an Input Space Partitioning exercise.
It's #4 from exercises 6.2 (page 90).
Consider the method intersection()
below,
along with a defective IDM:
public static Set intersection (Set s1, Set s2)
/**
* @param s1, s2 : sets to compute intersection of
* @return a (non null) Set equal to the intersection of Sets s1 and s2
* @throws NullPointerException if s1 or s2 is null
*/
Characteristic: Type of s1
- s1 = null
- s1 = {}
- s1 has at least one element
Characteristic: Relation between s1 and s2
- s1 and s2 represent the same set
- s1 is a subset of s2
- s2 is a subset of s1
- s1 and s2 do not have any elements in common
-
Does the partition for the characteristic "Type of s1" satisfy the completeness property? If not, give a value
for s1 that does not fit in any block.
-
Does the partition for the characteristic "Type of s1" satisfy the disjointness property? If not, give a value
for s1 that fits in more than one block.
-
If necessary, fix "Type of s1".
-
Repeat the prior 3 steps for the characteristic "Relation between s1 and s2".
-
If the "Base Choice" criterion were applied to the two partitions (exactly as written),
how many test requirements would result?
-
If the "Base Choice" criterion were applied to the repaired partitions,
how many test requirements would result?
Write out these test requirements.
-
Are all of these feasible?
If not, what should happen with the infeasible requirements?
-
Refine the test requirements into tests.
-
If the "Pair Wise" criterion were applied to the repaired partitions,
how many test requirements would result?
Write out these test requirements.
How many would be feasible?