基于新信息技术的软件测试技术 课件 第3章 黑盒测试.pptx

基于新信息技术的软件测试技术 课件 第3章 黑盒测试.pptx

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第3章黑盒测试;

3.1等?价?类?测?试;

;

3.1.1等价类的概念

由于穷举测试工作量太大,以至于无法实际完成,促使我们在大量的可能数据中选取其中一部分作为测试用例。

等价划分的方法是把程序的域划分为若干部分,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的用途等价于这一类中的其他值,也就是说,如果在某一类中的一个例子中发现了错误,则在这一等价类中的其他例子中也能发现同样的错误;反之,如果在某一类中的一个例子中没有发现错误,则这一类中的其他例子也不会被查出错误(除非等价类中的某些例子属于另一个等价类,因为几个等价类是可能相交的)。;

类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误是等效的,并合理假定:测试某等价类的代表值就等于测试这一类其他值。

因此,可以把全部输入数据合理地划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据取得较少的测试结果。等价划分有两种不同的情况:有效等价类和无效等价类。

(1)有效等价类:指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检查程序是否实现了规格说明中所规定的功能和性能。

(2)无效等价类:与有效等价类的定义相反。;

3.1.2等价类测试的类型

为了便于理解,以下讨论涉及两个变量X1和X2的函数F。如果函数F实现为一个程序,则输入变量X1和X2将拥有以下边界,以及边界内的区间:

a≤X1≤d,区间为[a,b),[b,c),[c,d]

e≤X2≤g,区间为[e,f),[f,g]

其中方括号和圆括号分别表示闭区间和开区间的端点。X1,X2的无效值是X1<a,X1>d,X2<e,X2>g。以此作为例子,我们将进一步讨论等价类测试的类型。;

1.弱一般等价类测试

弱一般等价类测试是指测试用例的设计是通过从每个等价类(区间)选择一个值来实现。所谓弱,是指从各个等价类中选取值时只考虑等价类自身,查出的缺陷属于“单缺陷”,即单一因素造成的缺陷。其用例如图3.2所示。;

;

2.强一般等价类测试

强一般等价类测试是指设计测试用例时需要考虑等价类之间的相互作用,选取等价类的笛卡尔积的元素值来实现。笛卡尔积可保证两种意义上的“完备性”:一是覆盖所有的等价类;二是有可能输入组合中的一个。所谓强,是指考虑了等价类之间的相互影响,查出的缺陷属于多种因素造成的“多缺陷”。其用例如图3.3所示。;

;

3.弱健壮等价类测试

弱健壮等价类测试是一种考虑了无效值又有单缺陷假设的测试。

(1)对于有效输入,使用每个有效类的一个值。(就像我们在所谓弱一般等价类测试中所做的一样。请注意,这些测试用例中的所有输入都是有效的。)

(2)对于无效输入,测试用例将拥有一个无效值,并保持其余的值都是等效的。(因此,“单缺陷”会造成测试用例失败。)

按照这种策略产生的测试用例如图3.4所示。;

;

4.强健壮等价类测试

强健壮等价类测试是指要考虑无效值又要考虑多缺陷假设的测试。它从所有的等价类笛卡尔积的每个元素中获得测试用例,如图3.5所示。;;

3.1.3等价类测试的原则

等价类测试的??则如下:

(1)在输入条件规定了取值范围的情况下,可以确立一个有效等价类(在取值范围之内)和两个无效等价类(小于取值范围和大于取值范围)。

(2)在输入条件规定了取值的个数的情况下,可以确立一个有效等价类(在取值个数范围之内)和两个无效等价类(小于取值个数和大于取值个数)。

(3)在输入条件规定了输入值的集合的情况下,可以确立一个有效等价类和一个无效等价类。;

(4)在输入条件规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。

(5)在输入条件是一个布尔量的情况下,可以确立一个有效等价类和一个无效等价类。

(6)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可以确立n个有效等价类和一个无效等价类。

(7)在规定了输入数据必须遵守规则的情况下,可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

;

(8)在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步划分为更小的等价类。;

3.1.4等价类方法设计举例

例程序规定,输入三个整数作为三边的边长,构成三角形。当此三角形为一般三角形、等腰三角形、等边三角形时,分别作计算。用等价类划分方法为该程序进行测试用例设计。

解设a、b、c代表三角形的三条边。

(1)分析题目中给出的和

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档