网站大量收购独家精品文档,联系QQ:2885784924

第4章2黑盒测试之等价类测试.pptVIP

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
测试的矛盾 为保证软件产品的质量,我们需要进行完备(彻底)的测试;但这是不现实的,因为: 输入量太大 输出结果太多 软件实现途径太多 测试的矛盾 从经济的角度来说,我们希望测试没有冗余; 一个好的测试用例在于能发现至今未发现的错误; 一个成功的测试是发现了至今未发现的错误的测试。 (1)你测试了1+1,1+2,1+3和1+4之后,还有必要测试1+5和1+6吗?你能放心地认为它们正确吗? (2)1+15与1+99999999999999999999999999999999有什么区别呢? 等价类方法可令测试事半功倍。 举例:加法器 4.2 等?价?类?测?试 4.2.1 等价类   1.等价类的划分   等价类的重要问题是它们构成集合的划分。划分是指互不相交的一组子集,这些子集的并是整个集合。划分可定义为:给定集合B,以及B的一组子集A1、A2、…、An,这些子集是B的一个划分,当且仅当 A1∪A2∪…∪An=B,且i≠j时,Ai∩Aj=?。    等价类的定义: 等价类是输入域的某个子集合,而所有的等价类的并集是整个输入域。在子集合中,各个输入数据对于揭露程序中的错误是等效的。 等价类测试的假设: 测试某等价类的代表值,就等效于对这个等价类中其他值的测试。 等价类测试的思想: 把全部的输入数据划分成若干个等价类,在每一个等价类中取一个数据来进行测试。 有效等价类 对于程序的规格说明来说,是合理的、有意义的输入数据所构成的集合; 无效等价类 对于程序的规格说明来说,是不合理的、没有意义的输入数据所构成的集合;   在设计测试用例时,要同时考虑这两种等价类。因为用户在使用软件时,有意或无意输入一些非法的数据是常有的事情。软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。   2.划分等价类的方法   等价类测试的思想就是把全部输入数据合理划分为若干等价类,在每一个等价类中取一个具有代表性的数据作为测试的输入条件,这样可以用少量的测试数据取得较好的测试效果。   在等价类测试中,划分等价类是非常关键的。如果等价类划分合理,可以大大减少测试用例,并能保证达到要求的测试覆盖率。那么如何划分等价类呢?一般来讲,首先要分析程序所有可能的输入情况,然后按照下列规则对其进行划分。   (1) 按照区间划分。在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。例如:程序的输入是学生成绩,其范围是0~100,则输入条件的等价类如图4-2-1所示。   其有效等价类为:0≤成绩≤100;无效等价类为:成绩<0,成绩>100。 图4-2-1 学生成绩的等价类  例 :在教师上岗方案中规定对教授、副教授、讲师和助教分别处理。那么可以确定4个有效等价类:教授、副教授、讲师和助教;1个无效等价类,它是所有不符合以上职称的人员构成的集合。 例:输入条件要求:x==5, 答案: 有效等价类:1个x==5 无效等价类:1个:x!=5   (3) 按照数值集合划分。在输入条件规定了输入值的集合或者规定了“必须如何”的情况下,可确立一个有效等价类和一个无效等价类。 例,某程序中有标识符,其输入条件规定“标识符应以字母开头……”,则可以这样划分等价类:“以字母开头者”作为有效等价类,“以非字母开头”作为无效等价类。  例:程序输入用户口令的长度必须是4位的串,可以确定一个邮箱等价类是串的长度为4,一个无效等价类长度不为4。   (4) 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。   (5) 进一步细分等价类。在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类。 例如:程序用于判断几何图形的形状,则我们可以首先根据边数划分出三角形、四边形、五边形、六边形等。然后对于每一种类型,我们可以做进一步的划分,比如三角形可以进一步分为等边三角形、等腰三角形和一般三角形。   (6) 等价类划分还应特别注意默认值、空值、Null、零值等的情形。   3.等价类的特点   按划分等价类的规则划分出的等价类具有下列特点:   (1) 完备性:划分出的各个等价类(子集)的并是输入/输出的全集,即程序的定义域/值域。   (2) 无冗余性:各个等价类是互不相交的一组子集。   (3) 等价性:划分的各个子集是由等价关系决定的,即各个输入数据对于揭露程序中的错误都是等效的。因此我们可以从等价类中选择一个具有代表性的数据进行测试就可以达到测试目的。 4.2.3 用等价类设计测试

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档