例解:集成测试用例与单元测试用例的区别

函数一:
getMaxInTwo(int a,int b)
{
if a>=b return a;
else return b;
}


函数二:

getMaxInThree(int a,int b,int c)
{
a=a+1;
int max=getMaxInTwo(a,b);
max=getMaxInTwo(max,c);
}


单元测试用例的设计:

getMaxInTwoUT用例:
32
13
22
语句覆盖率为100%

getMaxInThreeUT用例
123
语句覆盖率为100%


如果2个函数都执行了单元测试,则语句的覆盖率为100%

如果仅对getMaxInThree执行了单元测试,则getMaxInTwo的语句覆盖率仅为50%


集成测试用例的设计:

2个函数的接口的分析:
getMaxInThree需要传递2个参数给getMaxInTwo。这2个参数的正常等价类划分为:
a>b
b>a
a=b
我们希望getMaxInThree可以输出这样2个参数,使我们可以覆盖上述的3个等价类,那么getMaxInThree的输入应该是什么呢:
考虑(123)此用例仅覆盖了第2个和3个等价类。因此要完全覆盖接口的各种情况,需要我们设计另外一个新的用例:
222
因此我们得到的集成测试用例为:
123
222
2个用例覆盖了接口的3种情况,比较充分。即当2个函数集成后,需要执行这样2个用例才可以。

你可能感兴趣的:(软件技术)