版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
测试方法之边界值测试1第一页,共四十三页,2022年,8月28日黑盒测试(Black-boxTesting)软件输入输出又叫功能测试,数据驱动测试或基于规格说明的测试。它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性,如图所示。黑盒测试不深入代码细节2第二页,共四十三页,2022年,8月28日黑盒测试过程需求说明产生被测程序测试结果输出3第三页,共四十三页,2022年,8月28日黑盒测试的目标黒盒测试试图发现以下类型的错误:
功能错误或遗漏;界面错误,不美观;外部信息访问错误;性能错误;初始化和终止错误;在接口上,能否正确地接受输入数据,能否产生正确地输出信息;4第四页,共四十三页,2022年,8月28日黑盒测试有两种基本类型,即通过测试和失败测试。在进行通过测试时,实际上是确认软件能做什么,而不会去考验其能力如何。软件测试员只运用最简单,最直观的测试案例。在设计和执行测试案例时,总是先要进行通过测试。在进行破坏性试验之前,看一看软件基本功能是否能够实现。这一点很重要,否则在正常使用软件时就会奇怪地发现,为什么会有那么多的软件缺陷出现?在确信了软件正确运行之后,就可以采取各种手段通过搞“垮”软件来找出缺陷。纯粹为了破坏软件而设计和执行的测试案例,被称为失败测试或迫使出错测试。黑盒测试的类型5第五页,共四十三页,2022年,8月28日黑盒测试的难点黒盒测试的难点在于如何构造有效的输入。
由于输入空间通常是无限的,穷举测试显然行不通。寻找最小最重要的用例集合以精简测试复杂性。黑盒测试的优点有:1)比较简单,不需要了解程序内部的代码及实现;2)与软件的内部实现无关;3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)在做软件自动化测试时较为方便。黑盒测试的缺点有:1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;2)自动化测试的复用性较低。6第六页,共四十三页,2022年,8月28日黑盒测试方法黑盒测试的测试用例设计方法.边界值分析.等价类划分.因果图.错误推测.基于决策表的测试.功能图分析方法7第七页,共四十三页,2022年,8月28日边界值测试(内容)边界值分析健壮性测试最坏情况测试特殊值测试随机测试
8第八页,共四十三页,2022年,8月28日1.边界值分析边界值分析的原理边界值分析的思想边界值分析测试用例设计方法9第九页,共四十三页,2022年,8月28日(1)边界值分析的基本原理边界值分析(BoundaryValueAnalysis)基本原理错误更可能出现在输入变量的极值附近。边界值分析关注输入空间的边界,并从中标识测试用例。10第十页,共四十三页,2022年,8月28日常见的边界值举例).对16-bit的整数而言32767和-32768是边界).屏幕上光标在最左上、最右下位置).报表的第一行和最后一行).数组元素的第一个和最后一个
C++语言中,intA[10]:A[0]…A[9]
).循环的第0次、第1次和倒数第2次、最后一次
11第十一页,共四十三页,2022年,8月28日边界值分析的基本思想在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值表示方法min、min+、nom、max-、和max例如:涉及两个变量的函数x1,x2X1的取值x1min,x1min+,x1nom,x1max-,x1maxX2的取值x2min,x2min+,x2nom,x2max-,x2max12第十二页,共四十三页,2022年,8月28日边界值分析的取值13第十三页,共四十三页,2022年,8月28日“单缺陷”假设“单缺陷”假设
失效极少是由两个或多个缺陷的同时发生引起的
“单缺陷”假设是边界值分析的关键假设14第十四页,共四十三页,2022年,8月28日(3)边界值分析测试用例边界值分析获得测试用例的方法:使所有变量取正常值,只使一个变量取极值;对于一个n变量函数,边界值分析会产生4n+1个测试用例。
15第十五页,共四十三页,2022年,8月28日X1取值:x1min,x1min+
,x1nom,x1max-,x1maxX2取值:x2min,x2min+,x2nom,x2max-,x2max两个变量函数的边界值分析测试用例{<x1nom,x2min>,<x1nom,x2min+>,<x1nom,x2nom>,<x1nom,x2max->,<x1nom,x2max>,<x1min,x2nom>,<x1min+,x2nom>,<x1max-,x2nom>,<x1max,x2nom>}
两个变量函数边界值分析测试用例16第十六页,共四十三页,2022年,8月28日X2两个变量函数边界值分析测试用例17第十七页,共四十三页,2022年,8月28日举例:三角形问题三角形问题描述三条边a,b,c取整数值,且各边的取值范围是:[1,200]边界值分析设计测试用例每条边的取值:
1,2,100,199,200测试用例数目:4n+1三角形问题(n=3):用例数为1318第十八页,共四十三页,2022年,8月28日19第十九页,共四十三页,2022年,8月28日练习:NextDate函数输入条件1≤月份≤121≤日期≤311812≤年≤2012请用边界值分析设计测试用例20第二十页,共四十三页,2022年,8月28日(4)边界值分析优缺点边界值测试分析采用了可靠性理论的单缺陷假设。优点:简便易行;生成测试数据的成本很低;
局限性:测试用例不充分;不能发现测试变量之间的依赖关系;不考虑含义和性质;结论:只能作为初步测试用例使用21第二十一页,共四十三页,2022年,8月28日2.健壮性测试健壮性是指在异常情况下,软件还能正常运行的能力。健壮性有两层含义:
容错能力
恢复能力
22第二十二页,共四十三页,2022年,8月28日容错性测试通常构造一些不合理的输入来引诱软件出错,例如:
(1)输入错误的数据类型。如“猴”年“马”月。
(2)输入定义域之外的数值。粗暴一些方式俗称“大猩猩”测试法。除了不能拳打脚踢嘴咬外,什么招术都可以使出来。例如在测试客户机-服务器模式的软件时,把网络线拔掉,造成通信异常中断。恢复测试重点考察一下几项:
(1)系统能否重新运行;
(2)有无重要的数据丢失;
(3)是否毁坏了其它相关的软件硬件。23第二十三页,共四十三页,2022年,8月28日健壮性测试的基本思想健壮性测试是边界值分析的一种简单扩展,除了使用五个边界值分析取值,还要过采用:一个略超过最大值(max+)的取值一个略小于最小值(min-)的取值
24第二十四页,共四十三页,2022年,8月28日X2两个变量函数的健壮性测试用例25第二十五页,共四十三页,2022年,8月28日健壮性测试的讨论健壮性测试最有意思的部分不是输入而是预期的输出健壮性测试的主要价值是观察异常情况的处理软件质量要素的衡量标准:软件的容错性软件容错性的度量:从非法输入中恢复
26第二十六页,共四十三页,2022年,8月28日健壮性测试的测试用例个数
一个变量个数为n的函数的健壮性测试会产生多少个测试用例?6n+1?思考:27第二十七页,共四十三页,2022年,8月28日3.最坏情况测试最坏情况测试的基本思想边界值测试分析采用了可靠性理论的单缺陷假设最坏情况测试拒绝这种假设,关心当多个变量取极值时会出现什么情况?28第二十八页,共四十三页,2022年,8月28日最坏情况测试用例设计方法对每一个变量首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值五个元素集合的测试,然后对这些集合进行笛卡尔积计算,以生成测试用例。一个变量个数为n的函数的最坏情况测试会产生5n个测试用例。
29第二十九页,共四十三页,2022年,8月28日两变量函数的最坏情况测试用例X230第三十页,共四十三页,2022年,8月28日最坏情况与边界值分析的比较基本边界值分析测试用例是最坏情况测试用例的真子集。最坏情况测试显然更彻底最坏情况测试工作量大得多n变量函数的最坏情况测试会产生5的n次方个测试用例,边界值分析只产生4n+1个测试用例。31第三十一页,共四十三页,2022年,8月28日最坏情况测试举例(1)三角形问题三条边a,b,c取整数值,且各边的取值范围是:[1,200]最坏情况测试用例每条边的取值:1,2,100,199,200测试用例数目:5n三角形问题(n=3):用例数为125测试用例:见教材76页。32第三十二页,共四十三页,2022年,8月28日NextDate的测试用例输入条件1≤月份≤121≤日期≤311812≤年≤2012最坏情况测试用例设计月份取值:1,2,6,11,12日期取值:1,2,15,30,31年取值:1812,1813,1912,2011,2012最坏情况测试举例(2)33第三十三页,共四十三页,2022年,8月28日NextDate的测试用例测试用例数目
n=3,5n=125测试用例见教材79-82页错误的测试用例第41行:1812年2月30日遗漏重要的测试用例日期取28或29闰年:2000年最坏情况测试举例(2)34第三十四页,共四十三页,2022年,8月28日健壮最坏情况测试对于确实极端的测试,会采用健壮最坏情况测试,这种测试使用健壮性测试的7个元素集合。对每一个变量,首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值五个元素集合的测试,还要采用一个略超过最大值的取值,以及一个略小于最小值的取值。然后对这些集合进行笛卡尔积计算以生成7的n次方个测试用例。35第三十五页,共四十三页,2022年,8月28日两变量函数的健壮最坏情况测试用例36第三十六页,共四十三页,2022年,8月28日4.特殊值测试边界值分析假定n个变量是相互独立的,没有考虑这些变量之间的相互依赖关系;特殊值测试使用领域知识、使用类似程序的经验开发测试用例的特殊值。37第三十七页,共四十三页,2022年,8月28日特殊值测试特点:最直观、最不一致、具有高度主观性。特殊值测试特别依赖测试人员的能力虽然特殊值测试是高度主观性的,但是能更有效地发现缺陷例如:2月28日、2月29日38第三十八页,共四十三页,2022年,8月28日5.随机测试随机测试的基本思想不是永远选取有界变量的最小值、略高于最小值、正常值、略低于最大值和最大值,而是使用随机数生成器选出测试用例值。39第三十九页,共四十三页,2022年,8月28日随机测试的一种实现方法有界变量a≤x≤b值的一个VisualBasic应用程序生成的x,满足下式:
x=Int(b-a+1)*Rnd+a函数Int返回浮点数的整数部分函数Rnd生成区间[0,1]内的随机数
40第四十页,共四十三页,2022年,8月28日选择测试用例原则
1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。例如,如果程序的规格说明中规定:"重量在10公斤至50公斤范围内的邮件,其邮费计算公式为……"。作为测试用例,我们应取10及50,还应取10.01,49.99,9.99及50.01等。41第四十一页,共四十三页,2022年,8月28日选择测试用例原则
2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。比如,一个输入文件应包括1~255个记录,则测试用例可取1和255,还应取0及
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2021年主管护师(外科护理)资格考试统考题库
- 2021年主管护师(妇产科护理)统考题库(真题导出版)
- 正规钢材购买合同范例
- 林场防火道合同范例
- 海洋测绘设备租赁合同范例
- 模具合同范例合同范例
- 环评工业厂房租赁合同模板
- 小餐饮招工合同范例
- 店面简易租赁合同范例
- 快递客服合同范例
- 2024年健康管理师实操
- 2024智能变电站新一代集控站设备监控系统技术规范部分
- 职业素质养成(吉林交通职业技术学院)智慧树知到答案2024年吉林交通职业技术学院
- 企业反恐专项经费保障制度
- 5.5《方程的意义》(课件)-2024-2025学年人教版数学五年级上册
- 普通话训练手册读书札记
- 部编版二年级语文上册看拼音写词语含答案
- 2024年浙江省应急管理行政执法竞赛题库-上(单选、多选题)
- JJF 2133-2024海洋资料浮标传感器校准规范
- HGT 6333-2024《煤气化灰水阻垢分散剂阻垢性能测定方法》
- 2024年中考语文专练(上海专用)热点练14 议论文阅读论据位置判断及分析(含答案)
评论
0/150
提交评论