51Testing软件测试论坛

标题: 黑盒测试的等价类划分和边界值法的区别 [打印本页]

作者: skyleft    时间: 2006-5-16 22:16
标题: 黑盒测试的等价类划分和边界值法的区别
黑盒测试的等价类划分和边界值法的区别

大家能举个例子吗?
作者: millionaire    时间: 2006-5-16 23:13
等价划分:是指分步骤地把过多(无限)的测试案例减小到同样有效的小范围的过程。在寻找等价类时,想办法把软件的相似输入、输出、操作分成组。等价区间的划分没有一定的标准,只要足以覆盖测试对象就行了。这是一种用例设计的思想.
边界条件是指软件计划的操作界限所在的边缘条件.提出边界条件时,一定要测试临近边界的合法数据,即测试最后一个可能合法的数据,以及刚超过边界的非法数据。比如,int 型在32位机中,绝对是有数据范围的,那么就需要考虑这个max和min的用例.
作者: walker_lai    时间: 2006-9-9 15:30
学习了
作者: panxiaoyan    时间: 2007-3-1 17:19
等价类划分设计方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每个子集中选取少数具有代表性的数据作为测试用例。等价类划分有两种不同的情况:有效等价类和无效等价类。
边界值分析方法是对等价类划分方法的补充。使用边界值分析法方设计测试用例,应先确定边界情况。通常输入和输出等价类的边界,就是应着重测试边界的情况。其次,应当选取正好等于、刚刚大于、或刚刚小于边界的值作为测试数据。
作者: sindybi    时间: 2007-3-1 19:35
等价类划分:分有效等价类和无效等价类,是一组有相似功能或处理过程的数据
例如:要求输入整数
有效——整数
无效——小数、字符(可见字符、不可见字符、特殊字符等)

边界值分析法:输入输出规定了取值范围,用最大个数,最小个数,比最大个数多一,最小个数少一的数作测试数据
例如:0-50    取0、50、-1、51作测试数据
作者: jacktang    时间: 2007-3-1 21:34
等价类划分设计方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一个部分中选取少数具有代表性的数据作为i测试用例。
边界值法就是注重数据的边界值,是等价类划分的有效补充。

比如说 保险公司对不同的被保人有着不同的风险率 如下
18岁以下的
18到45岁的(包括18)
45岁到60岁的(包括45)
60岁以上的(包括60)
上述就是我们所说的等价类
可以在不同域 选取有代表性的数据
而 对于 边界值分析法
我们就要特别的 数据
比如18 17 19
45 44 46
60 59 61
作者: aa285757    时间: 2007-3-2 13:31
等价类和边界值在大多数情况下是一起用的吧,个人认为没必要划分很清楚。
作者: juanwang    时间: 2007-3-2 18:04
标题: 边界测试属于黑盒测试还是白盒测试?
这是我以前面试的题,我觉得即属于黑盒也属于白盒。不知道对不对。
请大家多多帮助了!!!
我的邮箱是:xinyun_821.student@sina.com.cn
作者: cscs    时间: 2007-3-3 11:48
原帖由 sindybi 于 2007-3-1 19:35 发表
等价类划分:分有效等价类和无效等价类,是一组有相似功能或处理过程的数据
例如:要求输入整数
有效——整数
无效——小数、字符(可见字符、不可见字符、特殊字符等)

边界值分析法:输入输出规定了取值 ...


seshilee
作者: JaneGu    时间: 2007-3-3 22:11
原帖由 juanwang 于 2007-3-2 18:04 发表
这是我以前面试的题,我觉得即属于黑盒也属于白盒。不知道对不对。
请大家多多帮助了!!!
我的邮箱是:xinyun_821.student@sina.com.cn




我同意你的观点。黑盒测试中肯定会用到边界值方法来设计用例。而白盒方法通常是考虑模块内部逻辑,有判定覆盖、路径覆盖等。假如是判定覆盖,那么在覆盖不同判定路径的时候,我们可以选用判定的边界值来设计用例。 所以不管白盒还是黑盒方法,都可以用边界值法。
作者: yunyan    时间: 2007-3-4 11:09
黑盒测试的等价类划分:接口的输入不同的分类.分为有效等价类和无效等价类
有效等价类:正确的输入值
无效等价类:错误的输入值
对于不同的情况有效等价类与无效等价类可以有不同的划分.
边界值:输入值为边界值
如:最大,最小,最长,最短,等等
作者: shirley.yang    时间: 2007-3-4 13:50
标题: 回复 #1 skyleft 的帖子
等价类和边界值在实际设计用例时都是配合使用的。
两者的联系是边界是针对等价类的输入等价类和输出等价类而言。
一定要讲区别,就是这两个方法所分析的角度不同:边界值测试方法狭义理解是用于输入和输出数值的测试,等价类用于针对输入和输出的条件进行划分。
郑人杰那本书的讲等价类时候,个人认为最有意思的例子是“每类科技书10至50册”,等价类划分有效和无效分别为,科技书|非科技类书,10至50册|<10册 >50册
如果针对以上设计详细的测试用例,则针对"10至50册"这个需求就需要进行边界值分析了.

以上是个人的理解,估计看那个郑人杰的书会更明白.偶也是正好讲这个的时候状态非常不好,尔后自己看了几遍这本书里讲的这种方法:)
作者: shirley.yang    时间: 2007-3-4 13:58
标题: 回复 #8 juanwang 的帖子
应该属于黑盒测试。
边界测试的时候,典型的就是把一个条件看作黑盒子,无须关注里面具体是怎么构造的。
其他支持理由:
王美女给我们上单元测试课,我们用边界值时设计用例时数目不够,王美女说了句“你们再用白盒方法设计用例,数目就够了”
恩,教条的说服就是,郑人杰的那本书,把边界是划分到黑盒测试这一章的sdlkfj5
作者: zhaochao8549    时间: 2007-3-6 12:10
等价类划分是将所有有效的输入数据分为若干个类
边界值应该是对等价类的补充
二者结合 配合使用
作者: gisjuanzi    时间: 2007-3-6 16:12
没看懂,还不是不明白两者的区别。
能不能从概念上分别阐述一下,并且这两种方法的主要测试结果?
作者: kxllr    时间: 2007-3-6 22:26
顶!!!!!!
作者: anruie    时间: 2007-3-11 16:55
其实这两种方法在具体使用的时候我们都是一起用的
等价类划分法:
     有效等价类-----合理的输入数据
     无效等价类-----不合理的输入数据
边界值分析法
   上点----边界上的点
   离点----离上点最近的一个点
   内点----域范围内的任意一个点
作者: ohyo12    时间: 2007-3-15 22:50
等价类划分:先考虑输入项,然后是输入项的有效和无效等价划分
例如:要求输入整数
有效——整数
无效——小数、字符(可见字符、不可见字符、特殊字符等)

边界值分析法:输入输出规定了取值范围,用最大个数,最小个数,比最大个数多一,最小个数少一的数作测试数据
例如:0-50    取0、50、-1、51作测试数据


两者大多一起使用
作者: gisjuanzi    时间: 2007-4-6 09:27
等价类划分是一种用例设计的思想,是按照相似输入和输出的原则把要执行的具体测试用例划分成等价类,然后执行测试。
而边界值法也是设计用例时的思想,是在具体执行测试用例时要用到的一测试技巧,取边界值。
作者: dbq231    时间: 2007-4-10 11:47
看完,顶一个
作者: net3000    时间: 2007-6-30 14:33
还是不清楚啊 ?在讲讲撒!
作者: dtbyuan    时间: 2007-7-2 11:53
看过些资料,说是等价类包含边界值法!不知道这样说,可否?
作者: yuanhao203    时间: 2007-7-3 10:26
kankan
作者: limengyun326    时间: 2007-7-3 16:17
边界值貌似有点懂,但不是很清楚,举例子会明白些吧

例如:

范围 (50,100]
       上点是 50,100
       离点是 51,101
                 ↑___________就这个不清楚(网上有些是写49,但不是说边界是开放的,离点是在域范围内的嘛?!)
       内点可以是 75 ...

离点,就是离上点最近的一个点,如果边界是封闭的,那离点就是域范围外离上点最近的点,如果边界是开放的,那离点就是的域范围内离上点最近点
作者: 紫§葡萄    时间: 2007-7-3 16:52
如果域为 (0,100] U [301,400] U {500,530,560,590} U [701,800]

这个怎么设计边界值用例?
作者: onlyspace    时间: 2009-11-11 17:16
膜拜一下~
作者: Junior    时间: 2010-1-27 23:05
测试经验丰富的前辈们公司我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对个中边界情况设计测试用例,可以查处更多的错误。
首先来了解一下边界点的定义,边界点分为上点、内点和离点
上点,就是边界上的点,不管它是开区间还是闭区间,就是说,如果该点是封闭的,那上点就在域范围内,如果该点是开放的,那上点就在域范围外;
内点,就是在域范围内的任意一个点;
离点,就是离上点最近的一个点,如果边界是封闭的,那离点就是域范围外离上点最近的点,如果边界是开放的,那离点就是域范围内离上点最近的点。
现在大家都知道边界点了,那接下来就讲一下,边界值分析方法的原则:
1、如果输入(输出)条件规定了取值范围,则应该以该范围的边界值及边界附近的值作为测试数据;
2、如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据;
3、如果程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最后一个元素作为测试数据;
4、如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试数据







基于边界值分析方法选择测试用例的原则:
1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚
刚超越这个范围边界的值作为测试输入数据。
2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,
比最大个数多一的数作为测试数据。
3)根据规格说明的每个输出条件,使用前面的原则1)。
4)根据规格说明的每个输出条件,应用前面的原则2)。
5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第
一个元素和最后一个元素作为测试用例。
6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界
上的值作为测试用例。
7)分析规格说明,找出其它可能的边界条件。
从上面可以看出,当输入条件是一个范围的话,那么使用边界值分析是有效的,
而离散的值则由于边界难以区分,而不是一个较为有效的方法。




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