51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4293|回复: 6
打印 上一主题 下一主题

[讨论] 测试用例覆盖问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-3-4 21:01:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一条测试用例应该尽可能多的覆盖不同路径还是应该使得不同的路径用不同的测试用例来覆盖?
例如:
我要测试一个能解释字符串表达式的函数,要测试其中是否能够正确运算加法&乘法,是应该:
写一条测试用例:3×2+1
还是写两个测试用例:2×1   、   7+8
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-3-6 16:51:00 | 只看该作者
你写的这2个用例可以完全理解成覆盖不一样的范围,3*2+1这个用例可以覆盖到连算的功能,也能证明*和+是正确的,但是一但出错,那你就不能定位是*错还是+错,而下面的2*1 和7+8 可以正确覆盖,而且可以证明*是对的,或者错的 +是对的或者错的。
楼主能明白吗
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2006-3-6 17:07:09 | 只看该作者
LS正解,支持
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2006-3-6 18:41:49 | 只看该作者
jun84826 的意思是不是:不同的测试用例应该测试不同的功能,每个测试用例尽量只对每一个功能进行测试,对吗?
我记得看Ron Patton写的<软件测试>这本书中好象也有类似的说法,但是现在就是找不到原话了.

各位能不能再辛苦一下帮忙看看同样我要还是测试一个能解释字符串表达式的函数,下面的测试用例是否有缺少或多余的?
(为了简单起见,现在只考虑加法和乘法运算整数.只考虑数字常量处理,不考虑表达式出错.)
1)  0+0  (最小值)
2)    999999999+0  (最大值)
3)  999999999+1  (越界)
4)  1000000000+0 (越界)  
5)   0*0
6)  1*0
7)  999999999*1
8)  999999999*2   (越界)  
9)  1*1
10)  1+2*0 (连算)  
11)  1*(4+3) (括号是否能改变运算顺序)
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2006-3-7 10:14:17 | 只看该作者
jun84826 的观点我不能完全先赞同
——jun84826 的意思是不是:不同的测试用例应该测试不同的功能,每个测试用例尽量只对每一个功能进行测试。

在对功能进行测试时,这样对单个功能进行测试是必要的,但如果仅仅做如此的孤立测试,是远远不够的。
我这里要提到函数(程序)的问题,一个功能往往对应一个函数(程序)。那么在一个函数运行完了,再运行另一个函数会发生什么情况?能不能正确的调用呢?已运行的函数有没有从内存中清除?会不会对其它函数的运行产生影响?这些都是要考虑到的。而这些是孤立的功能测试无法检测到的。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-3-7 15:29:43 | 只看该作者

磋商

我认为楼主提到的问题是测试用例的覆盖问题,按照楼主的本意是测试一个能解释字符串表达式的函数,测试是否能正确运算*&+,3×2+1,1*2,7+8,都必须,因为这里涉及到*和+的优先级别问题,除此之外应该还有一个测试用例子:1+3*5
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-3-8 00:32:54 | 只看该作者
原帖由 zhf69 于 2006-3-6 18:41 发表
jun84826 的意思是不是:不同的测试用例应该测试不同的功能,每个测试用例尽量只对每一个功能进行测试,对吗?
我记得看Ron Patton写的<软件测试>这本书中好象也有类似的说法,但是现在就是找不到原话了.

各 ...
按此测试不知道9999999998+2,+3等类似用例是否越界,如果已经定义函数运算结果超过100000000就算越界,那么前面3例应该就没有意义了吧?不属于“测试一个能解释字符串表达式的函数”这个目的的范畴了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-1 00:01 , Processed in 0.071852 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表