您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > [实用参考]黑盒测试技术.ppt
SoftWareTestingEducation&TrainingSoftWareTestingEducation&Training引言•本章将开始讲黑盒测试的基本概念与基本方法,介绍等价类划分、边界值分析、因果图法,并通过实例来介绍测试技术的应用。SoftWareTestingEducation&Training5.1黑盒测试概述•黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。软件输入黑盒测试不深入代码细节输出5.1黑盒测试概述•在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性,如图所示。.黑盒测试主要用于发现以下情况①是否有不正确或遗漏了的功能②在接口上,能否正确地接受输入数据,能否产生正确地输出信息③访问外部信息是否有错④性能上是否满足要求⑤界面是否错误,是否不美观⑥初始化或终止错误.“黑盒”的两种基本方法•黑盒测试有两种基本方法,即通过测试和失败测试。•在进行通过测试时,实际上是确认软件能做什么,而不会去考验其能力如何。软件测试员只运用最简单,最直观的测试案例。在设计和执行测试案例时,总是先要进行通过测试。在进行破坏性试验之前,看一看软件基本功能是否能够实现。这一点很重要,否则在正常使用软件时就会奇怪地发现,为什么会有那么多的软件缺陷出现?•在确信了软件正确运行之后,就可以采取各种手段通过搞“垮”软件来找出缺陷。纯粹为了破坏软件而设计和执行的测试案例,被称为失败测试或迫使出错测试。.黑盒测试的优、缺点黑盒测试的优点有:1)比较简单,不需要了解程序内部的代码及实现;2)与软件的内部实现无关;3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)在做软件自动化测试时较为方便。黑盒测试的缺点有:1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;2)自动化测试的复用性较低。.黑盒测试的测试用例设计方法•等价类划分方法•边界值分析方法•错误推测方法•因果图方法•判定表驱动分析方法•功能图分析方法等价类划方法•为了保证软件质量,我们需要做尽量多的测试,但不可能用所有可能的输入数据来测试程序,即穷尽测试是不可能的。我们可以选择一些有代表性的数据来测试程序,但怎样选择呢?等价类划分是解决这一问题的一个方法。等价类划方法的理论知识•等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。等价类•等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据,取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。•有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。•无效等价类:与有效等价类的定义恰巧相反。设计测试用例时,要同时考虑这两种等价类。因为,软件不仅要能接收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。划分等价类的规则1.如果输入条件规定了取值范围,可定义一个有效等价类和两个无效等价类。例:输入值是学生成绩,范围是0~100有效等价类:①0≤成绩≤100无效等价类:①成绩0,②成绩100划分等价类的规则(续)(2)如果规定了输入数据的个数,则类似地可以划分出一个有效等价类和两个无效等价类。例:一个学生每学期只能选修1~3门课有效等价类:①选修1~3门无效等价类:①不选或②选修超过3门划分等价类的规则(续)(3)如规定了输入数据的一组值,且程序对不同输入值做不同处理,则每个允许的输入值是一个有效等价类,并有一个无效等价类(所有不允许的输入值的集合)。例:输入条件说明学历可为:专科、本科、硕士、博士四种之一有效等价类:①专科、②本科、③硕士、④博士无效等价类:①其它任何学历划分等价类的规则(续)(4)如果规定了输入数据必须遵循的规则,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。例:校内电话号码拨外线为9开头有效等价类:①9+外线号码无效等价类:①非9开头+外线号码②9+非外线号码,…等价类划分法测试用例设计(1)对每个输入或外部条件进行等价类划分,形成等价类表,为每一等价类规定一个唯一的编号;(2)设计一测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步骤,直到所有有效等价类均被测试用例所覆盖;(3)设计一新测试用例,使其只覆盖一个无效等价类,重复这一步骤直到所有无效等价类均被覆盖;例1:报表日期设某公司要打印2001~2005年的报表,其中报表日期为6位数字组成,其中,前4位为年份,后两位为月份。第一步:划分等价类输入及外部条件有效等价类无效等价类报表日期的类型及长度6位数字字符①有非数字字符④少于6个数字字符⑤多于6个数字字符⑥年份范围在2001~2005之间②小于2001⑦大于2005⑧月份范围在1~12之间③小于1⑨大于12⑩第二步:为有效等价类设计测试用例对表中编号为①②③的3个有效等价类用一个测试用例覆盖:测试数据期望结果覆盖范围200105输入有效等价类①②③第三步:为每一个无效等价类至少设计一个测试用例测试数据期望结果覆盖范围001MAY输入无效等价类④20015输入无效等价类⑤2001001输入无效等价类⑥20000输入无效等价类⑦20080输入无效等价类⑧200100输入无效等价类⑨200113输入无效等价类⑩本例的10个等价类至少需要8个测试用例不能出现相同的测试用例对招干考试系统“输入学生成绩”子模块设计测试用例招干考试分三个专业,准考证号第一位为专业代号,如:1-行政专业,2-法律专业,3-财经专业.行政专业准考证号码为:110001~111215法律专业准考证号码为:210001~212006财经专业准考证号码为:310001~314015例:例2:准考证号码例:准考证号码的等价类划分有效等价类:(1)110001~111215(2)210001~212006(3)310001~314015无效等价类:(4)-~110000(5)111216~210000(6)212007~310000(7)314016~+例3电话号码城市的电话号码由两部分组成。这两部分的名称和内容分别是:地区码:以0开头的三位或者四位数字(包括0);电话号码:以非0、非1开头的七位或者八位数字。假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,就可用等价分类法来设计它的调试用例。划分等价类并编号输入数据有效等价类无效等价类地区码(1)以0开头的3位数串(2)以0开头的4位数串(1)以0开头的含有非数字字符的串(2)以0开头的小于3位的数串(3)以0开头的大于4位的数串(4)以非0开头的数串电话号码(1)以非0、非1开头的7位数串(2)以非0、非1开头的8位数串(1)以0开头的数串(2)以1开头的数串(3)以非0、非1开头的含有非法字符7或者8位数串(4)以非0、非1开头的小于7位数串(5)以非0、非1开头的大于8位数串为有效等价类设计测试用例测试数据期望结果覆盖范围01023145678显示有效输入(1)、(8)0232234567显示有效输入(1)、(7)08513456789显示有效输入(2)、(7)085123145678显示有效输入(2)、(8)为每一个无效等价类至少设计一个测试用例测试数据期望结果覆盖范围0a3423456789显示无效输入(3)0523456789显示无效输入(4)0123423456789显示无效输入(5)234123456789显示无效输入(6)02801234567显示无效输入(9)02812345
本文标题:[实用参考]黑盒测试技术.ppt
链接地址:https://www.777doc.com/doc-4978295 .html