(某公司的笔试题)写一段代码的测试用例
应聘某公司软件测试一职位的其中一道笔试题,请大家前来帮助解答下!写出覆盖下面程序的测试用例。
int a、b、c
.......
if(a>b & b>c)
print (b is the middle)
else
print (b is not the middle) 白盒的。。额,不太懂。。。 应该是叫你设计输入吧
a>b>c
a>c>b
a>b=c
b>a>c
b>c>a
b>a=c
c>a>b
c>b>a
c>a=b
a=b=c 本帖最后由 li_feibo 于 2012-5-11 22:50 编辑
突然想到一个解决的方法,不知道是否正确,现在写出来, 希望大家都进来发表下自己的看法
采用组合的方法分析,把a>b和b>c分别看成是两个组合的条件,并用0、1表示,其中1表示真,0表示假,那么有4种组合的情况:(0,0),(0,1),(1,0),(1,1)。
不知道能否这样理解呢 正如我3楼回复的,验证这段代码的功能就是验证
1)if的判断是否正常
2)输出是否正常
需要你做的就是准备输入的数据,如何才能用全面的数据保证代码的正常,就是这个嘛 按照代码的解释貌似是先定义3个整形的变量,在将这3个数用IF判断,满足条件输出“b is the middle”
不满足执行ELSE输出“b is not the middle” 路径覆盖方法即可。
我觉得写出来多少用例都是形式,关键是思维模式。 可以尝试使用图论来设计相关测试用例。将这些条件作为分区工作,列出所有的情况,设计路径覆盖。 回复 6# metoto
嗯,谢谢metoto的回答......... a>b 为一个条件,b>c为一个条件
条件组合判定(其中包括>,<,=) 版主和Metoto说的都有道理…… 路径覆盖 我的第一反应的跟版主想的一样的,把a>b和b>c分别看成是两个组合的条件,然后将a>b(a<=b)与b>c(b<=c)进行组合。
页:
[1]