6.2 三角形问题的等价类测试用例
等价类:四种可能出现的输出:非三角形、不等边三角形、等腰三角形和等边三角形
R2={<a,b,c>:有三条边a、b、c的等腰三角形}
R3={<a,b,c>:有三条边a、b、c的不等边三角形}
R4={<a,b,c>:三条边a、b、c不构成三角形}
测试用例数量:4个
用例标识 | a | b | c | 预期输出 |
WN1 | 5 | 5 | 5 | 等边三角形 |
WN2 | 2 | 2 | 3 | 等腰三角形 |
WN3 | 3 | 4 | 5 | 不等边三角形 |
WN4 | 4 | 1 | 2 | 非三角形 |
注:WN,Weak Normal(猜测,不一定准确,未看到英文原版)
(2)强一般等价类测试用例
a、b、c的有效取值只有[1,200]一段,没有组合,所以强一般(注:SN,Strong Normal,猜测)等价类与弱一般等价类相同。
测试用例数量:10个
a | b | c | 预期输出 | |
WR1 | 5 | 5 | 5 | 等边三角形 |
WR2 | 2 | 2 | 3 | 等腰三角形 |
WR3 | 3 | 4 | 5 | 不等边三角形 |
WR4 | 4 | 1 | 2 | 非三角形 |
WR5 | -1 | 5 | 5 | a取值无效 |
WR6 | 5 | -1 | 5 | b取值无效 |
WR7 | 5 | 5 | -1 | c取值无效 |
WR8 | 201 | 5 | 5 | a取值无效 |
WR9 | 5 | 201 | 5 | b取值无效 |
WR10 | 5 | 5 | 201 | c取值无效 |
注:WR,Weak Robust(猜测,不一定准确,未看到英文原版)
(4)强健壮性等价类测试用例
测试用例数量:4+6×7 =46个。其中4是指强一般等价类的4个测试用例,6是指3组取值构成的3维空间的6个角之一,如下图所示,每个角上有7个用例。下表示例的是如下图所示的靠近原点的角上的7个测试用例。
用例标识 | a | b | c | 预期输出 |
-1 | 5 | 5 | ||
SR2 | 5 | -1 | 5 | b取值无效 |
SR3 | -1 | 5 | 5 | c取值无效 |
SR4 | -1 | -1 | 5 | a、b取值无效 |
SR5 | 5 | -1 | -1 | b、c取值无效 |
SR6 | -1 | 5 | -1 | a、c取值无效 |
SR7 | -1 | -1 | -1 | a、b、c取值无效 |
注:SR,Strong Robust(猜测,不一定准确,未看到英文原版)
(5)另一种等价类的划分方式
有效等价类:
D1 = {<a,b,c>: a=b=c,1≤a、b、c≤200}
D2 = {<a,b,c>: a=b,a≠c,1≤a、b、c≤200}
D3 = {<a,b,c>: a=c,a≠b,1≤a、b、c≤200}
D4 = {<a,b,c>: b=c,a≠b,1≤a、b、c≤200}
D5 = {<a,b,c>: a≠b≠c,1≤a、b、c≤200}
D6 = {<a,b,c>: a≥b+c,1≤a、b、c≤200}
D7 = {<a,b,c>: b≥a+c,1≤a、b、c≤200}
D8 = {<a,b,c>: c≥a+b,1≤a、b、c≤200}
无效等价类:
D9 = {<a,b,c>: a<1}
D12 = {<a,b,c>: b>200}
D11 = {<a,b,c>: c<1}
D12 = {<a,b,c>: c>200}