为程序生成边界值分析,健壮和最坏情况的测试用例,以找到三个数字的中位数。它的输入是正整数的三倍(例如x,y和z),最小值可以是100,最大值可以是500。
三个数字的中位数是对所有三个数字进行排序时的中间数字。
例子 –
10, 40, 20
在这种情况下,中位数为20(10、20、40)。
1.边值测试用例是–
for x, y, z :
min value = 100
close to min = 101
nominal = 300
close to max = 499
max = 500
测试用例是
4*3 + 1 = 13
X | Y | Z | Median |
---|---|---|---|
100 | 300 | 300 | 300 |
101 | 300 | 300 | 300 |
300 | 300 | 300 | 300 |
499 | 300 | 300 | 300 |
500 | 300 | 300 | 300 |
300 | 100 | 300 | 300 |
300 | 101 | 300 | 300 |
300 | 499 | 300 | 300 |
300 | 500 | 300 | 300 |
300 | 300 | 100 | 300 |
300 | 300 | 101 | 300 |
300 | 300 | 499 | 300 |
300 | 300 | 500 | 300 |
2.健壮的测试用例–
在这里,我们超出了合法边界,这是边界值分析的扩展。
for x, y, z :
min value : 100
close to min : 101
nominal : 300
close to max : 499
max : 500
lesser than min value : 99
larger than max value : 501
测试用例总数
= 6*n+1 = 6*3+1 = 19
因此,除了上述13宗案件之外,还会有6宗案件–
X | Y | Z |
---|---|---|
99 | 300 | 300 |
501 | 300 | 300 |
300 | 99 | 300 |
300 | 501 | 300 |
300 | 300 | 99 |
300 | 300 | 501 |
3.最差的测试用例–
如果我们拒绝可靠性的“单一”故障假设理论,并考虑超过1个变量具有极值的情况,则称为最坏情况分析。
总数测试用例
5^n = 5^3 = 125 cases
X | Y | Z | Median |
---|---|---|---|
100 | 100 | 100 | 100 |
101 | 100 | 100 | 100 |
300 | 100 | 100 | 100 |
499 | 100 | 100 | 100 |
500 | 100 | 100 | 100 |
100 | 101 | 100 | 100 |
101 | 101 | 100 | 101 |
300 | 101 | 100 | 101 |
499 | 101 | 100 | 101 |
… | … | … | … |
从数学上讲,测试用例将是3套的叉积–
{100, 101, 300, 499, 500}
x {100, 101, 300, 499, 500}
x {100, 101, 300, 499, 500}
设A,
= {100, 101, 300, 499, 500}
因此,最坏的情况将由以下形式表示:
= A x A x A