51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4196|回复: 5
打印 上一主题 下一主题

[求助] 单元测试时针对switch中的每个值都需要编写测试用例吗?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-5-2 10:59:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 snddman 于 2013-5-9 10:46 编辑

单元测试时针对switch中的每个值都需要编写测试用例吗?switch中大约有10个左右的分支,是否针对每个分支给定条件编写测试用例,还是仅针对部分值编写?
谢谢!

===========================================
补充:
我的意思是如果有几个case供用的时候,例如
void fun(int a) {
    switch(a) {
    case 0:
    case 1:
    case 2:
        xxxx;
        break;
    case 3:
    case 4:
        yyyy;
        break;
    default:
        zzzz;
    }
}
这种情况是否需要对a等于每个case的值都测试一下呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2013-5-3 09:32:58 | 只看该作者
最好是每个分支都有用例覆盖
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2013-5-9 10:47:07 | 只看该作者
回复 2# 六月天
我补充了问题的描述,帮我看看啊,谢谢你了。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2013-5-11 12:58:00 | 只看该作者
嗯,最好是要。这是条件覆盖率的要求
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2013-6-4 16:05:50 | 只看该作者
个人感觉不需要,1、2、3走的是同样一条路径,1个用例即可覆盖,无需3个用例
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2013-7-29 22:00:39 | 只看该作者
就你给的这个方法来说
case.0.1 都没有break会继续执行到case2  →1个
case 3:  case 4: →2个
default: →3个
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 03:08 , Processed in 0.110674 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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