软件测试-第2章黑盒_第1页
软件测试-第2章黑盒_第2页
软件测试-第2章黑盒_第3页
软件测试-第2章黑盒_第4页
软件测试-第2章黑盒_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章黑盒测试2.2黑盒测试工具2.1黑盒测试方法教学要求:理解:黑盒测试概念掌握:等价类划分、边界值分析和因果图等方法、黑盒测试工具QTP的使用2.1黑盒测试方法黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。2.1黑盒测试方法(续)黑盒测试主要试图发现下列几类错误:是否有不正确或遗漏了的功能在接口上,能否正确地接受输入数据,能否产生正确地输出信息访问外部信息是否有错;性能上是否满足要求;界面是否错误,是否不美观;初始化或终止错误。2.1黑盒测试方法(续)黑盒测试的优点有:1)比较简单,不需要了解程序内部的代码及实现;2)与软件的内部实现无关;3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)在做软件自动化测试时较为方便。2.1黑盒测试方法(续)黑盒测试的缺点有:1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;2)自动化测试的复用性较低。2.1黑盒测试方法(续)具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。2.1.1等价类划分法等价类划分的办法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误。使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上划分等价类,列出等价类表

2.1.1等价类划分法(续)1.划分等价类和列出等价类表等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。等价类划分:有效等价类和无效等价类。有效等价类:指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。无效等价类:与有效等价类的定义恰巧相反。2.1.1等价类划分法(续)确定等价类的原则:在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类。在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类。2.1.1等价类划分法(续)2.确定测试用例

为每个等价类规定一个惟一的编号。设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步,最后使得所有有效等价类均被测试用例所覆盖。2.1.1等价类划分法(续)例2-1某程序规定:“输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算…”。用等价类划分方法为该程序进行测试用例设计。

2.1.1等价类划分法(续)分析:

(1)整数

(2)三个数

(3)非零数

(4)正数

(5)两边之和大于第三边

(6)等腰

(7)等边

如果a、b、c满足条件(1)~(4),则输出下列四种情况之一:如果不满足条件(5),则程序输出为"非三角形"。如果三条边相等即满足条件(7),则程序输出为"等边三角形"。如果只有两条边相等、即满足条件(6),则程序输出为"等腰三角形"。如果三条边都不相等,则程序输出为"一般三角形"。2.1.1等价类划分法(续)例2-3城市的电话号码由两部分组成。这两部分的名称和内容分别是:地区码:以0开头的三位或者四位数字(包括0);电话号码:以非0、非1开头的七位或者八位数字。2.1.1等价类划分法(续)划分等价类输入数据有效等价类无效等价类地区码以0开头的3位数串以0开头的4位数串以0开头的含有非数字字符的串以0开头的小于3位的数串以0开头的大于4位的数串以非0开头的数串电话号码以非0、非1开头的7位数串以非0、非1开头的8位数串以0开头的数串以1开头的数串以非0、非1开头的含有非法字符7或者8位数串以非0、非1开头的小于7位数串以非0、非1开头的大于8位数串2.1.1等价类划分法(续)例2-4保险公司计算保费费率的程序某保险公司的人寿保险的保费计算方式为:投保额×保险费率其中,保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下所示:

年龄

性别婚姻抚养人数

20~3940~59其它

M

F已婚

未婚

1人扣0.5点

最多扣3点(四舍五入取整)

6点

4点

2点

5点

3点

3点

5点2.1.1等价类划分法(续)分析:年龄:一位或两位非零整数,值的有效范围为1~99性别:一位英文字符,只能取值‘M’或’F’婚姻:字符,只能取值‘已婚’或‘未婚’抚养人数:空白或一位非零整数(1~9)点数:一位或两位非零整数,值的范围为1~99

2.1.2边界值分析法边界点:边界点分为上点、内点和离点

闭区间半开半闭区间开区间离点离点离点离点离点离点上点上点上点上点上点上点内点内点内点2.1.2边界值分析法(续)边界值分析方法的原则:如果输入(输出)条件规定了取值范围,则应该以该范围的边界值及边界附近的值作为测试数据;如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据;如果程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最后一个元素作为测试数据;2.1.2边界值分析法(续)1.边界条件就是特殊情况,因为编程从根本上说不怀疑边界有问题。2.1.2边界值分析法(续)2.次边界条件在软件内部,最终用户几乎看不到,但是软件测试仍有必要检查。2.1.2边界值分析法(续)3.边界值的选择方法边界值分析是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。2.1.2边界值分析法(续)例2-6:测试计算平方根的函数输入:实数输出:实数规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息"平方根非法-输入值小于0"并返回0;库函数Print-Line可以用来输出错误信息。2.1.2边界值分析法(续)1)等价类划分:I.可以考虑作出如下划分:

a、输入(i)<0和(ii)>=0b、输出(a)>=0和(b)ErrorII.测试用例有两个:a、输入4,输出2。对应于(ii)和(a)。b、输入-10,输出0和错误提示。对应于(i)和(b)。2)边界值分析:划分(ii)的边界为0和最大正实数;划分(i)的边界为最小负实数和0。a、输入{最小负实数}b、输入{绝对值很小的负数}c、输入0d、输入{绝对值很小的正数}e、输入{最大正实数}2.1.2边界值分析法(续)例2-6现有一个学生标准化考试批阅试卷,产生成绩报告的程序。其规格说明如下:程序的输入文件由一些有80个字符的记录组成,2.1.3因果图法因果图法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。2.1.3因果图法(续)用c表示原因,e表示结果,。各结点表示状态,可取“0”或“1”值。“0”表示某状态不出现,“1”表示某状态出现。2.1.3因果图法(续)因果图设计步骤如下:分析程序规格说明的描述中,哪些是原因,哪些是结果。并给每个原因和结果赋予一个标识符。分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的关系,根据这些关系,画出因果图。由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。把因果图转换成判定表。把判定表的每一列拿出来作为依据,设计测试用例。

2.1.3因果图法(续)判定表(DecisionTable)是分析和表达多逻辑条件下执行不同操作的情况下的工具。利用判定表能够设计出完整的测试用例集合。在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合。2.1.3因果图法(续)判定表组成

2.1.3因果图法(续)例2-9订购单的检查。如果金额超过500元,又未过期,则发出批准单和提货单;如果金额超过500元,但过期了,则不发批准单;如果金额低于500元,则不论是否过期都发出批准单和提货单,在过期的情况下还需要发出通知单。将这段需求进行判定表分析,可以得到如下判定表金额>500>500<=500<=500状态未过期已过期未过期已过期发出批准单OOO发出提货单OOO发出通知单O2.1.3因果图法(续)例2-10有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是两元硬币,在送出饮料的同时退还5角硬币。原因:投入1元5角硬币; 投入2元硬币;按“可乐”按钮;按“雪碧”按钮; 按“红茶”按钮。中间状态:已投币;已按钮。结果:退还5角硬币;送出“可乐”饮料;送出“雪碧”饮料;送出“红茶”饮料。2.1.3因果图法(续)根据原因和结果,设计这样一个因果图2.2黑盒测试工具常用的黑盒测试工具包括:功能测试工具。用于检测程序能否达到预期的功能呢要求并正常运行。性能测试工具。用于确定软件和系统的性能。2.2.1黑盒测试工具介绍WinRunnerMercuryInteractive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序2.2.1黑盒测试工具介绍(续)QTP是quicktestProfessional的简称,是一种自动测试工具。QTP是一个功能测试工具,主要帮助测试人员完成软件的功能测试,与其他测试工具一样,QTP不能完全取代测试人员的手工操作,但是在某个功能点上,使用QTP的确能够帮助测试人员做很多工作。2.2.2使用QTP进行黑盒测试QuickTest工作流程录制测试脚本前的准备录制测试脚本加强测试脚本2.2.2使用QTP进行黑盒测试(续)测试脚本当浏览网站或使用应用程序时,QuickTest会纪录你的操作步骤,并产生测试脚本。当停止录制后,会看到QuickTest在KeywordView中以表格的方式显示测试脚本的操作步骤。录制测试前的准备录制测试脚本分析录制的测试脚本执行测试脚本分析测试结果2.2.2使用QTP进行黑盒测试(续)建立检查点检查点是将指定属性的当前值与该属性的期望值进行比较的验证点。检查点的种类对象检查网页检查文字检查表格检查执行并分析使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论