| 什么是单元测试?如何编写单元测试用例? |
| 来源:
发布时间:2008-04-25 发布人:
浏览:
人次
字体:
[大
中
小]
|
|
不算,为什么?因为上面的4条路径已经包括了所有的边。第5条路径已经不包含没有用过的边了。所有的路径都遍历过了。
好了,现在我们有了4条基本独立路径根据独立路径我们可以设计测试用例。
1 B(4,24) 输入数据:i_flag=0,或者是i_flag<0的某一个值。 预期结果:i_temp=0.
2 C,E,J(4,6,8,24) 输入数据: i_count =1; i_flag=0 预期结果:i_temp=101.
3 C,D,F,H,A,B(4,6,13,15,22,4,24) 输入数据: i_count =1; i_flag=1 预期结果:i_temp=10.
4 C,D,G,I,A,B(4,6,13,19,22,4,24) 输入数据: i_count =1; i_flag=2 预期结果:i_temp=20.
这里的输入数据是有路径和程序推论出来的。而要注意的是预期结果是从函数说明中导出,不能根据程序结构中导出。
为什么这么说? 让我们看程序中的第3行。 int i_temp=0; 假如开发人员一不小心写错了,变成了int i_temp=1; 根据程序导出的预期结果就会是一个错误的值,但是单元测试不出来问题,那单元测试就失去了意义。
有人也许会问这么简单的函数就有4个测试用例,如果还复杂一些的怎么办?上面的测试用例还可以简化吗?答案是可以。
我们来看 路径 1 B(4,24)和 4 C,D,G,I,A,B(4,6,13,19,22,4,24),路径1是路径4的真子集, 所以1是可以不必要的。上图的圈复杂度是4。这个结果对我们来说有什么意义呢?它表示我们只要最多4个测试用例就可以达到基本路径覆盖。所以说圈复杂度标示是最多的测试用例个数,不是一定要4个测试用例才可以。不过有一点要申明的是测试用例越简化代表你的测试越少,这样程序的安全性就越低了。
四、完成测试
接下来根据测试用例使用工具测试NUNIT,VS2005都可以。
接下来根据测试结果编写测试报告,测试人,时间,结果,用例,是否通过,格式网上一大把,每个公司的格式也不一样就不说了。
共2页: 上一页 [1] 2 下一页
| |
| |
|
|
|
|
| §最新评论:(评论内容只代表网友观点,与本站立场无关!) | |
|
|
|
|
| 注意:请勿在本站发布政治话题、色情及违反法律的内容。 |
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。 |