2014-第4章黑盒测试PPT课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
健壮性测试最关心的是预期的输出,而不是输入。健壮 性测试的最大价值在于观察处理异常情况,它是检测软件系 统容错性的重要手段。
第4章 黑 盒 测 试
4.1.4 最坏情况测试 最坏情况测试拒绝单缺陷假设,它关心的是当多个变量
取极值时出现的情况。最坏情况测试中,对每一个输入变量 首先获得包含最小值、略大于最小值、正常值、略小于最大 值、最大值的五个元素集合的测试,然后对这些集合进行笛 卡尔积计算,以生成测试用例。
边界值分析关注的是输入空间的边界,从中标识测试用例。 边界值测试背后的基本原理是错误更可能出现在输入变量的极 值附近。因此针对各种边界情况设计测试用例,可以查出更多 的错误。
第4章 黑 盒 测 试
4.1.1 边界条件 边界条件就是一些特殊情况。一般的,在条件C下,软件
执行一种操作,对任意小的值σ,条件C+σ或C-σ会执行另外的 操作,则C就是一个边界。
x2 d
c oa
b
x1
图4-1-3 两个变量函数的健壮性测试用例
第4章 黑 盒 测 试
例如,有一个二元函数f(x,y),要求输入变量x,y分别 满足:x∈[0,100],y∈[1000,3000],对其进行健壮性测 试,则需要设计13个测试用例。根据健壮性测试的原理,可 以得到下面一组测试数据:{<-1,1500>,<0,1500>,<1, 1500>,<50,1500>,<99,1500>,<100,1500>,<101, 1500>,<50,999>,<50,1000>,<50,1001>,<50, 2999>,<50,3000>,<50,3001>}。
理工作。
第4章 黑 盒 测 试 4.1.2 黑盒测试与白盒测试的比较
1
Hale Waihona Puke 已知产品的因素2检查测试的主要内容
3
静态测试方法
4
动态测试方法
第4章 黑 盒 测 试
1
已知产品的因素
● 黑盒测试:已知产品的功能设计规格,可以通过 测试证明每种实现的功能是否符合要求。
● 白盒测试:已知产品的内部工作结构,可以通过 测试证明每种内部操作是否符合设计规格要求, 以及所有内部成分是否经过检查。
对于一个含有n个输入变量的程序,使除一个以外的所 有变量取正常值,剩余的一个变量依次取最小值、略大于最 小值、正常值、略小于最大值和最大值,并对每个变量重复 进行。因此,对于有n个输入变量的程序,边界值分析会产 生4n+1个测试用例。
第4章 黑 盒 测 试
例如,有一个三元函数f(x, y, z),其中x∈[0,100], y∈[1,12],z∈[1,31],对该函数采用边界值分析法设计 的测试用例将会得到13个测试用例,根据边界分析的原理, 可得到下列测试数据:{ <50,6,1>,<50,6,2>,<50, 6,30>,<50,6,31>,<50,1,15>,<50,2,15>,<50, 11,15>,<50,12,15>,<0,6,15>,<1,6,15>,<99, 6,15>,<100,6,15>,<50,6,15> }。
第4章 黑 盒 测 试
在边界值分析中,用到了单缺陷假设,即选取测试用例 时仅仅使得一个变量取极值,其他变量均取正常值。对于有 两个输入变量的程序P,其边界值分析的测试用例如下:
{<x1nom,x2min>,<x1nom,x2min+>,<x1nom,x2nom>, <x1nom,x2max->,<x1nom,x2max>,<x1min,x2nom>,<x1min+, x2nom>,<x1max-,x2nom>,<x1max,x2nom>}
第4章 黑 盒 测 试
黑盒测试对程序的功能性测试要求
● 每个软件特性必须被一个测试用例或一个被认可 的异常所覆盖。 ● 利用数据类型和数据值的最小集测试。 ● 利用一系列真实的数据类型和数据值运行,测试 超负荷及其他“最坏情况”的结果。 ● 利用假想的数据类型和数据值运行,测试排斥不 规则输入的能力。 ● 测试影响性能的关键模块,如基本算法、精度、 时间、容量等是否正常。
动态测试方法
● 动态黑盒测试方法:通过数据输入并运行程序来 检验输出结果,如功能测试、验收测试和一些性 能测试等。
● 动态白盒测试方法:通过驱动程序来调用,如进 行单元测试、集成测试和部分性能测试等。
第4章 黑 盒 测 试
第4章 黑 盒 测 试
4.1 边界值测试 4.2 等价类测试 4.3 基于判定表的测试 4.4 因果图 4.5 其他黑盒测试方法 4.6 综合案例 4.7 本章小结
第4章 黑 盒 测 试
3.其他边界条件 有一些边界条件容易被人忽略,比如在文本框中不是没 有输入正确的信息,而是根本就没有输入任何内容,然后就 按“确认”按钮。这种情况常常被遗忘或忽视了,但在实际 使用中却时常发生。因此在测试时还需要考虑程序对默认值、 空白、空值、零值、无输入等情况的反应。 在进行边界值测试时,如何确定边界条件的取值呢?一 般情况下,确定边界值应遵循以下几条原则: (1) 如果输入条件规定了值的范围,则应取刚达到这个 范围的边界的值,以及刚刚超越这个范围边界的值作为测试 输入数据。
对于有两个输入变量的程序P,其边界值分析的测试用 例在图中的位置如图4-1-2所示。
第4章 黑 盒 测 试
x2 d
c oa
b
x1
图4-1-2 两个变量函数的边界值分析
第4章 黑 盒 测 试
例如,有一个二元函数f(x,y),要求输入变量x,y分别 满足:x∈[1,12],y∈[1,31]。采用边界值分析法设计测 试用例,可以选择下面一组测试数据:{ <1,15>,<2,15>, <11,15>,<12,15>,<6,15>,<6,1>,<6,2>,<6, 30>,<6,31> }。
健壮性边界测试是边界值分析的一种简单扩展。在使用该方 法设计测试用例时,既要考虑有效输入,又要考虑无效的输入。 除了按照边界值分析方法选取的五个取值(min、min+、nom、 max-、max)外,还要选取略小于最小值(min-)和略大于最大值 (max+)的取值,以观察输入变量超过边界时程序会有什么表现。 对于有两个变量的程序P,其健壮性测试的测试用例如图4-1-3所 示。
x2 d
c oa
b
x1
图4-1-1 两个变量函数的输入域
第4章 黑 盒 测 试
边界值分析的基本思想是使用输入变量的最小值、略大 于最小值、正常值、略小于最大值和最大值设计测试用例。 通常我们用min、min+、nom、max-和max来表示。
当一个函数或程序有两个及两个以上的输入变量时,就 需要考虑如何组合各变量的取值。我们可根据可靠性理论中 的单缺陷假设和多缺陷假设来考虑。单缺陷假设是指“失效 极少是由两个或两个以上的缺陷同时发生引起的”。依据单 缺陷假设来设计测试用例,只让一个变量取边界值,其余变 量取正常值。多缺陷假设是指“失效是由两个或两个以上缺 陷同时作用引起的”。因此依据多缺陷假设来设计测试用例, 要求在选取测试用例时同时让多个变量取边界值。
第4章 黑 盒 测 试
对于一个含有n个输入变量的程序,进行健壮性边界测 试时,使除一个以外的所有变量取正常值,使剩余的那个变 量依次取略小于最小值、最小值、略大于最小值、正常值、 略小于最大值、最大值和略大于最大值,并对每个变量重复 进行。因此其健壮性测试会产生6n+1个测试用例。
第4章 黑 盒 测 试
第4章 黑 盒 测 试
4.1.1 黑盒测试的优点和缺点
优点
缺点
(1)有针对性地寻找问题, 并且定位问题更准确。 (2)黑盒测试可以证明产品 是否达到用户要求的功能,符 合用户的工作要求。 (3)能重复执行相同的动作 ,测试工作中最枯燥的部分可
交由机器完成。
(1)需要充分了解产品 用到的技术,测试人员需 要具有较多经验。 (2)在测试过程中很多 是手工测试操作。 (3)测试人员要负责大 量文档、报表的编制和整
(5) 分析规格说明,找出其他可能的边界条件。
第4章 黑 盒 测 试
4.1.2 边界值分析 为便于理解,以下讨论涉及两个输入变量x1和x2的函数
F。假设x1和x2分别在下列范围内取值:a≤x1≤b;c≤x2≤d。 函数F的输入空间如图4-1-1所示。矩形阴影中的任何一
点都是函数F的有效输入。
第4章 黑 盒 测 试
第4章 黑 盒 测 试
比如,在做三角形计算时,要输入三角形的三个边长A、 B和C。这三个数值应当满足A>0、B>0、C>0、A+B>C、 A+C>B、B+C>A,才能构成三角形。但如果把六个不等式 中的任何一个大于号“>”错写成大于等于号“≥”,那就不 能构成三角形。问题常常出现在容易被疏忽的边界附近。类似 的例子还有很多,如计数器常常“少记一次”;循环条件应该 是“≤”时错误地写成了“<”;数组下标越界(在C语言中数 组下标是从零开始,可能错误地认为是从1开始,从而使最后 一个元素的下标越界)等。
第4章 黑 盒 测 试
4.1 边 界 值 测 试
任何一个程序都可以看做是一个函数,程序的输入构成 函数的定义域,程序的输出构成函数的值域。人们从长期的 测试工作经验得知,大量的错误是发生在定义域或值域(输 出)的边界上,而不是在其内部。对于软件缺陷,有句谚语 形容得很恰当,即“缺陷遗漏在角落里,聚集在边界上”。
内部边界条件主要有下面几种。
第4章 黑 盒 测 试
1.数值的边界值 计算机是基于二进制进行工作的,因此,软件的任何数 值运算都有一定的范围限制。比如一个字节由8位组成,一 个字节所能表达的数值范围是[0,255]。表4-1-1列出了计算 机中常用数值的范围。
第4章 黑 盒 测 试
2.字符的边界值 在计算机软件中,字符也是很重要的表示元素。其中 ASCII和Unicode是常见的编码方式。表4-1-2中列出了一些 常用字符对应的ASCII码值。如果要测试文本输入或文本转 换的软件,在定义数据区间包含哪些值时,就可以参考 ASCII码表,找出隐含的边界条件。
在多数情况下,边界条件是基于应用程序的功能设计而需 要考虑的因素,可以从软件的规格说明或常识中得到。比如程 序要对学生成绩进行处理,要求输入数据的范围是[0,100], 则很明显输入条件的边界是0和100。
然而,在测试用例设计过程中,某些边界条件是不需要呈 现给用户的,或者说用户是很难注意到的,但同时确实属于检 验范畴内的边界条件,称为内部边界条件或次边界条件。
第4章 黑 盒 测 试
4.1.3 健壮性边界测试 健壮性是指在异常情况下,软件还能正常运行的能力。健壮
性可衡量软件对于规范要求以外的输入情况的处理能力。所谓健 壮的系统,是指对于规范要求以外的输入能够判断出这个输入不 符合规范要求,并能有合理的处理方式的系统。软件设计的健壮 与否直接反映了分析设计和编码人员的水平。
第4章 黑 盒 测 试
(2) 如果输入条件规定了值的个数,则用最大个数、最 小个数、比最小个数少一、比最大个数多一的数作为测试数 据。
(3) 如果程序的规格说明给出的输入域或输出域是有序 集合,则应选取集合的第一个元素和最后一个元素作为测试 数据。
(4) 如果程序中使用了一个内部数据结构,则应当选择 这个内部数据结构的边界上的值作为测试数据。
少测试一遍。 ● 在循环的边界和运行的界限内执行循环体。
第4章 黑 盒 测 试
3
静态测试方法
● 静态黑盒测试方法:文档测试,特别是产品需求文档、用
户手册、帮助文件等的审查。 ● 静态白盒测试方法:走查、复审、评审程序源代码、数据
字典、系统设计文档、环境设置、软件配置项等。
第4章 黑 盒 测 试
4
第4章 黑 盒 测 试
本章内容提要
黑盒测试的基本概念 黑盒测试的方法 黑盒测试的依据和流程
第4章 黑 盒 测 试
4.1 黑盒测试的基本概念
第4章 黑 盒 测 试
黑盒测试结果
通过测试
测试失败
第4章 黑 盒 测 试
黑盒测试能发现以下几类错误
● 功能不对或遗漏。 ● 界面错误。 ● 数据结构或外部数据库访问错误。 ● 性能错误。 ● 初始化和终止错误。
第4章 黑 盒 测 试
2
检查测试的主要内容
黑盒测试检查的内容如下: ● 是否有不正确或遗漏的功能? ● 在接口上,输入是否能正确地接受?能否输出正确的结果? ● 是否有数据结构错误或外部信息访问错误? ● 是否有初始化或终止性错误? 白盒测试检查的内容如下: ● 对程序模块的所有独立的执行路径至少测试一遍。 ● 对所有的逻辑判定,取“真”与取“假”的两种情况都能至
相关文档
最新文档