51Testing软件测试论坛

标题: 关于等价类的一个问题 [打印本页]

作者: 碎片    时间: 2007-5-27 11:02
标题: 关于等价类的一个问题
如果一个系统有若干个等价类,其中有两个类分别是"年龄"和"婚否"
年龄 有效等价类是:0-19                           
                            20-39
                            40-80
婚否 有效等价类是:已婚
                              未婚

在这种情况下,如果年龄=1  婚否=已婚         
这个是否属于无效等价类,还是在等价类法中这个属于有效等价类
像这种情况应该怎样处理??
作者: nine9909    时间: 2007-5-27 11:15
标题: 个人意见
个人觉得应该属于有效等价划分,必尽等价类划分这种测试方法只追求是否每一个等价类都有用例覆盖,至于其他组合的情况不是它所考虑的范围。
作者: gzj_06    时间: 2007-5-27 12:01
这些都是有效等价类,但是这种组合没有实际意义,应在设计用例时去掉,请参考下附件中的图片,是原来周老师给我们参考的
作者: 霸气林林    时间: 2007-5-27 12:30
同意楼上高作军同学说的那样,0~19、20~39、40~80这3个年龄段范围内的都属于有效类等价;
婚否的有效类等价为已婚和未婚这两项,建议LZ在等价类分析时可以先把所有能成立的分析项先列出来,然后再根据实际的情况做出筛选,哪些成立和哪些不成立,就好比你说的(年龄为1岁,已婚)的确是有效类的等价,但不符合常理。(PS:除非是“娃娃亲”了,说笑的)
大致就是这个思路
作者: gzj_06    时间: 2007-5-27 13:20
哦,原来是王王木木,那也只是举行了订婚仪式而已,还是属于未婚sdlkfj3  sdlkfj5
原帖由 霸气林林 于 2007-5-27 12:30 发表
(PS:除非是“娃娃亲”了,说笑的)

作者: 碎片    时间: 2007-5-27 14:08
sdlkfj8 娃娃亲
作者: MarsNoNo    时间: 2007-5-28 13:21
赞成一下!!!
作者: Yzzz    时间: 2007-5-28 22:44
这必然是有效等价类啊~~虽说那么小不能结婚~既然它在需求范围内~就是有效的~那我们就要测~测试是要负责任地~不测过怎么知道呀~sdlkfj5
作者: yqx    时间: 2007-5-29 21:41
是属于等价类的没错,测试的时候必须考虑到
作者: net3000    时间: 2007-6-30 14:30
考虑没考虑狼人或外星人的性别问题?
作者: keenling    时间: 2007-6-30 19:37
那个要看你对等价类是怎么划分的。划分等价类不是机械的,是人为的。1岁、婚属于逻辑型错误,但原来的输入框也没有限制这种输入。
    若是你的等价类按照单个输入项划分,那么即使这种输入也是有效等价类。如果你的等价类考虑了逻辑组合情况,那么这种输入可以被判为无效的。
    对个程序,我认为i这也是有效等价类,因为原来程序也没有限制你这种输入为非法。
作者: coffeeba    时间: 2007-7-1 11:29
标题: 发表一下看法
完全赞同11楼的看法

我觉得这是一个有效等价类

光从等价类划分上来看,这是没有问题的!!!
但是我们在做测试的时候,不可能只用等价类的方法

像这样一个系统,对于这个问题,试一下边界值方法
比喻说:已婚的的>=20或<=80,这样来设计边界取值
就不会了!!!
所以我认为看待一个问题,只能从很多方面来考虑,单凭一个方法是不行的,因为每个方法都有盲点!
哈哈
还好,在51老师教了我们很多的方法
谢谢老师们!!!
作者: hyq828    时间: 2007-7-1 18:18
同意12楼的
按照等价类划分的话,“年龄=1  婚否=已婚”,算是有效等价类,但这不符合逻辑。
所以用例设计要考虑实际情况
作者: blackboyzb    时间: 2007-7-2 00:09
这个是有效等价类
这个组合主要看你是什么关注点了
有效等价类追求最少的用例覆盖最多的有效等价类
显然性别是被多次覆盖的,我们认为测试的很充分
而年龄只要被覆盖完全了,我们就认为也测试充分了
至于实际情况当然考虑是最好了
但是不是我们关注的重点,实际情况的组合更不是等价类关注的重
作者: vivi1003    时间: 2007-8-2 18:07
标题: 等价类划分法
1 分析该功能点包含几个输入数据
2 针对每一个输入数据按照不同的等价类划分原则进行等价类的定义
3 判断该等价类是否要进行细化
4 编写测试用例
a每个测试用例覆盖尽量多的有效等价类(为了提高测试的工作效率)
b每一个无效等价类构造一个单独的测试用例(为了发现问题后,容易知道是哪方面出现的 )
作者: vivi1003    时间: 2007-8-2 18:37
标题: 等价类划分法举个例子
飞机票分为头等舱和经济舱,假设头等舱的座位是没有区别的,价钱都一样,经济舱的座位是分为靠窗,靠过道,中间,价钱不同。1-4行是头等舱的座位,且头等舱每行有4个座位,所以为A B C D 4列,5-9行是头等舱的座位,且头等舱每行有6个座位,所以为A B C D E  F 6列,靠窗的是 A D 列 ,靠过道的 E F 列  中间的 B C 列。一张飞机票是由行号和列号确定的。

编号                 有效 /无效等价类                    代表值     
1                      头等舱(1-4行)                       2
2                      经济舱 (5-9行)                      6
3                      靠窗   A  D                              A
4                      靠过道 E   F                             F
5                      中间                                       C
6                      行号〈1                                  0
7                      行号〉9                                  10
8                     行号非数字                                A
9                      列号非A-F的字母                       G
10                    列号非字母                               ,
作者: vivi1003    时间: 2007-8-2 18:46
标题: 回复 #1 碎片 的帖子
你这样考虑等价类是不对的,因为等价类是在说一类的东西,年龄 婚否 已经是两类不同事物,怎么能划到一起去说有效或无效。等价类之间的组合是要在写测试用例时在考虑的。那时可以有一个年龄=1  婚否=已婚    的测试用例,来测试是否存在缺陷,不过不能说是有效或无效等价类的测试用例。
作者: ivyhuan    时间: 2007-8-2 18:47
同意3楼 的 ,有效等价类,但要根据实际情况来设计用例的
作者: 小孩    时间: 2007-8-3 13:12
等价类就是 所用的 测试用例发现的缺陷都是一样的!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2