第3章黑盒测试方法2-边界值分析法

合集下载

黑盒测试常用的测试方法

黑盒测试常用的测试方法

⿊盒测试常⽤的测试⽅法⼀:说明1.1 等价类划⽅法1.2 边界值分析⽅法1.3 决策表⽅法1.4 错误推测⽅法1.4 因果图⽅法⼆:详解2.1 等价类划分⽅法定义:是把所有可能的输⼊数据,即程序的输⼊域划分成若⼲部分(⼦集),然后从每⼀个⼦集中选取少数具有代表性的数据作为测试⽤例(⼦集中每个输⼊对发现软件错误都是等效的)。

该⽅法是⼀种重要的,常⽤的⿊盒测试⽤例设计⽅法。

等价类分类:(a) 有效等价类-->指对于软件规格说明来说,是合理的、有意义的输⼊数据构成的集合。

(b) ⽆效等价类-->与有效等价类相反,指对于软件规格说明⽽⾔,没有意义的、不合理的输⼊数据集合。

编写设计测试⽤例的步骤:(1) 根据被测对象的输⼊条件,确定等价类,包括有效等价类和⽆效等价类。

有效等价类:系统可以接受、认可的、正确的业务操作。

⽆效等价类:系统认为是⾮法的,不合理的输⼊。

(2) 将有效等价类、⽆效等价类进⾏编号。

有效等价类取交集,⽆效等价类取并集。

(3) 为每个等价类设计具体测试数据。

注:在实际测试过程中,不管是有效等价类,还是⽆效等价类,系统都要做出响应。

如输⼊合法邮箱名,系统应该能够接受;如输⼊⾮法邮箱名,系统应给予“邮箱名输⼊不合法,请重新输⼊!”等类似的错误提⽰。

案例:新浪邮箱名,其输⼊要求如下:1. 4~16个字符2. ⽀持英⽂⼩写、数字、下划线3. 不⽀持全部为数字或下划线案例解析:输⼊条件有效等价类⽆效等价类输⼊条件有效等价类⽆效等价类⽤户名字符数4~16(1)0(2)、0<个数<4(3)、>16(4)⽤户名组成英⽂⼩写(5)、数字(6)、下划线(7)⾮英⽂⼩写、数字、下划线(8)⽤户名⽀持格式不全为数字(9)、不全为下划线(10)全为数字(11)、全为下划线(12)邮箱名有效输⼊集合: (1) (5) (6) (7) (9) (10) 32jing_qfda ⽆效集合:(2) 邮箱名为空 (3) jby(4) jiangboyang_1987_12_22 (8) 江渤洋 (11) 1234567890 (12) __________最终测试⽤例:序号输⼊及操作说明期望的测试结果132jing_qfda 符合要求2邮件名为空⽤户名字符数不符合要求3jby4jiangboyang_1987_12_225江渤洋⽤户名组成不符合要求6@#%……7FDAY 81234567890⽤户名⽀持格式不符合要求9__________2.2 边界值分析⽅法定义:边界值分析法就是对输⼊或输出的边界值进⾏测试的⼀种⿊盒测试⽅法。

常用的黑盒测试方法

常用的黑盒测试方法

常用的黑盒测试方法黑盒测试是一种测试方法,它主要关注测试软件系统的输入和输出,而不关心系统内部的工作原理、代码结构、数据结构以及算法等细节。

在软件开发领域,黑盒测试是非常广泛和常用的测试方法之一。

下面是常用的黑盒测试方法。

1. 等价类划分法等价类划分法是一种将输入域分为若干个等价类的方法。

等价类是指输入域中,具有相同功能、相同限制和具有同样重要性的数据集合。

在测试中,只需选择每个等价类的一个代表进行测试。

这样可以大大减少测试用例的数量,节省测试时间和成本。

2. 边界值分析法边界值分析法是一种将输入域分为边界值和非边界值的方法。

在测试中,特别关注输入域的边界值,并测试边界值的输入处理是否正确。

这样可以找出许多潜在的错误和缺陷。

3. 因果图法因果图法是在系统分析的基础上对系统的输入和输出进行分析,然后构建因果图。

通过分析因果图,找出潜在的问题和缺陷。

因果图法特别适合于对软件系统中逻辑关系复杂的部分进行测试。

4. 判定表驱动法判定表驱动法是一种使用表格来设计测试用例的方法。

表格中列出了输入和输出的可能组合,根据测试策略选择一些组合进行测试。

这种方法适合于大型、复杂的系统,可以进行更加有针对性的测试。

5. 交叉检验法交叉检验法是用一个子集的数据作为训练集,另一个子集作为测试集,来反复检验分类准确性的一种方法。

它能够帮助测试人员发现模型的问题和缺陷,并及时进行改进,从而提高模型的准确性。

总之,黑盒测试方法是非常实用和广泛应用的一种测试方法。

测试人员要合理选择测试方法,根据测试目的和测试需求进行选择。

这样可以提高测试效率和测试质量,及时发现和解决软件系统的问题和缺陷。

黑盒测试是什么,主要测试方法有哪些

黑盒测试是什么,主要测试方法有哪些

黑盒测试是什么
黑盒测试是一种软件测试方法,测试人员关注的是软件系统的功能,而不考虑内部逻辑结构。

黑盒测试类似于将软件系统看作一个黑盒子,只关心输入、输出和系统对输入的反应,而不关心内部实现细节。

主要测试方法
1.等价类划分法
等价类划分法是一种常用的黑盒测试方法。

测试人员将输入数据划分为不同的等价类,选择一个代表性的值进行测试,以确保每个等价类的数据都能得到适当的处理。

2.边界值分析法
边界值分析法是一种关注软件系统边界条件的测试方法。

测试人员会测试输入数据的边界情况,包括边界处和边界附近的数值,这样可以检查系统在边界条件下的正确性。

3.因果图法
因果图法是一种图形化的测试方法,通过绘制因果图来描述系统的输入和输出关系。

测试人员可以根据因果图识别出潜在的测试用例,从而对系统进行有效的测试。

4.决策表测试法
决策表测试法是一种用表格方式描述系统决策逻辑的测试方法。

通过编写决策表,测试人员可以识别出系统不同条件和操作之间的关系,从而有效地进行测试。

5.状态转换测试法
状态转换测试法适用于有状态的系统测试。

测试人员根据系统状态之间的转换关系设计测试用例,确保系统在不同状态切换时能够正确地响应。

通过上述方法,测试人员可以全面地覆盖软件系统的功能,并保证系统在各种情况下都能正确运行。

黑盒测试是软件测试中不可或缺的一部分,通过有效的黑盒测试方法,可以提高软件质量,降低系统出错的风险。

黑盒测试的设计方法

黑盒测试的设计方法

黑盒测试的设计方法黑盒测试是一种测试方法,旨在测试软件系统的功能和用户需求是否符合预期。

与白盒测试相比,黑盒测试专注于测试系统的外部行为,而不关心系统的内部实现细节。

在黑盒测试中,测试人员没有访问系统源代码的权限,只能基于软件规约和需求文档进行测试。

为了设计有效的黑盒测试用例,以下是几种常用的黑盒测试设计方法:1. 等价类划分法:等价类划分法是黑盒测试中最常用的设计方法之一。

它将输入域划分为多个等价类,每个等价类代表一组具有相同功能或行为的输入。

通过选择其中的一个或几个测试用例进行测试,可以有效地覆盖输入域的多个情况。

例如,对于一个要求输入年龄的系统,可以将年龄划分为负数、0-17岁、18-60岁和大于60岁等等等价类。

2. 边界值分析法:边界值分析法是一种特殊的等价类划分方法,它关注输入域的边界条件。

根据输入域的边界条件设计测试用例,可以更好地发现潜在的问题。

例如,对于一个要求输入1-100之间的数字的系统,边界值分析法会测试输入1和100,以确保系统在边界条件下的正常工作。

3. 因果图法:因果图法是一种图形化的设计方法,通过对系统的功能和用户需求进行建模,以便更好地理解系统的逻辑关系。

通过使用因果图,测试人员可以发现功能之间的依赖关系,从而设计测试用例。

因果图法通常用于复杂系统,可以帮助测试人员更好地理解和覆盖系统的功能。

4. 判定表法:判定表法是一种以规则和条件为基础的测试设计方法。

在判定表中,规则和条件被列举出来,并使用真值表来确定特定条件下的期望结果。

通过设计测试用例来测试不同条件的组合,可以有效地发现系统的问题。

判定表法特别适用于决策较多的系统,可以帮助测试人员设计高效的测试用例。

5. 错误推测法:错误推测法是一种基于经验的测试设计方法。

测试人员根据以往的经验和知识,推测系统中可能存在的问题,并设计测试用例来验证这些问题。

错误推测法是一种质量保证团队经常使用的方法,可以帮助捕获一些开发团队容易忽略的问题。

黑盒测试的方法

黑盒测试的方法

黑盒测试的方法黑盒测试是软件测试中的一种重要方法,它是在不考虑程序内部结构和实现细节的情况下,通过输入和输出来检查软件的功能和性能。

黑盒测试主要关注软件的功能是否符合需求,以及在各种输入条件下是否能产生正确的输出。

在进行黑盒测试时,测试人员需要根据软件的需求规格说明书和功能规格说明书,设计测试用例并进行测试,以验证软件是否符合用户需求。

下面将介绍一些常用的黑盒测试方法。

1. 等价类划分法。

等价类划分法是一种常用的黑盒测试方法,它将输入数据划分为若干个等价类,然后从每个等价类中选择一个代表性的数据进行测试。

这样可以有效地减少测试用例的数量,同时保证覆盖了各种情况。

例如,对于一个要求输入1到100之间的数字的软件,可以将输入数据划分为小于1、1到100之间、大于100这三个等价类,然后分别选择一个代表性的数据进行测试。

2. 边界值分析法。

边界值分析法是在等价类划分法的基础上,对边界值进行重点测试的一种方法。

因为通常情况下,软件在边界处容易出现错误。

例如,对于一个要求输入1到100之间的数字的软件,边界值为1和100,测试人员可以重点测试这两个边界值附近的情况,以确保软件在边界处能够正常工作。

3. 因果图法。

因果图法是一种用于描述软件功能和输入之间因果关系的图形化方法,它能够帮助测试人员理清软件功能之间的关联,从而设计出更加全面的测试用例。

通过因果图法,测试人员可以将软件的功能和输入条件进行组合,找出各种情况下的测试用例,以确保软件能够正常工作。

4. 判定表驱动法。

判定表驱动法是一种将各种输入条件和对应的输出结果进行组合的方法,通过设计判定表来指导测试用例的设计。

判定表中列出了各种输入条件和输出结果的组合情况,测试人员可以根据判定表来设计测试用例,并进行测试。

这种方法能够帮助测试人员全面地覆盖各种情况,确保软件的功能和性能都得到了验证。

总结。

在进行黑盒测试时,测试人员可以根据软件的需求规格说明书和功能规格说明书,选择合适的测试方法,并设计相应的测试用例进行测试。

第三章黑盒测试与用例设计---边界值分析法

第三章黑盒测试与用例设计---边界值分析法

范围或值
0或1 0 ~ 255
字(word) 0~65535(单字)或 0~4294967295(双字)
千(K)
兆(M) 吉(G)
1024
1048576 1073741824
字符的边界值检验
• 在计算机软件中,字符也是很重要的表示元素,其中ASCII 和Unicode是常见的编码方式。下表中列出了一些常用字符 对应的ASCII码值。 字符 空 (null) 空格 (space) 斜杠 ( / ) 0 冒号 ( : ) @ ASCII码值 0 32 47 48 58 64 字符 A a Z z 单引号 ( ‘ ) ASCII码值 65 97 90 122 96
年龄
20~39 40~59 6点 4点 其它 2点
性别
M 5点 F 3点
婚姻
已婚 3点 未婚 5点
抚养人数
1人扣0.5点 最多扣3点 (四舍五入取整)
边界值在哪里?
• 凡是遇到和数字有关的基本都需要考虑边 界值 • 1,年龄 • 2,抚养人• •
买5件:5*5 买15件 买25件 买50件
边界值分析(续)
• 通常情况下,软件测试所包含的边界检验有几种类型: 数字、字符、位置、质量、大小、速度、方位、尺寸、 空间等 • 相应地,以上类型的边界值应该在: 最大/最小、首位/末位、上/下、最快/最慢、最高/最低、 最短/最长、 空/满等情况下
实例分析
举例 —— 利用边界值作为测试数据
项 边界值 测试用例的设计思路 假设一个文本输入区域允许输入1个到255个 起始-1个 字符,输入1个和255个字符作为有效等价类; 字符 字符/结束 输入0个和256个字符作为无效等价类,这几个 +1个字符 数值都属于边界条件值。 数值 最小值-1/ 最大值+1

第三章 黑盒测试

第三章  黑盒测试

无效等价类
无效等价类是指对程序规格说明, 是不合理或无意义的输入数据所构成的 集合。 利用无效等价类,可以检查程序功 能和性能的实现是 否有不符合规格说 明要求的地方。 对于具体的问题,无效等价类至少应有 一个,也可能有多个。
等价类划分
根据已列出的等价类表,按以下步骤确 定测试用例: 1)为每个等价类规定一个唯一的编号。 2) 设计一个新的测试用例,尽可能多地覆盖 尚未被覆盖的有效等价类,重复这一步,直 到测试用例覆盖了所有的有效等价类。 3) 设计一个新的测试用例,使其覆盖并且只 覆盖一个还没有被覆盖的无效等价类。重复 这一步,直至测试用例覆盖了所有的无效等 价类。
对闰年问题 给予更多的注意
标准等价类测试用例:
测试用例
Test1 Test2 Test3 Test4
Month
4 5 2 4
Day
15 29 30 31
Year
2000 1996 2002 2000
预期输出
4/16/2000 5/30/1996 2/31/2002(不可能的日期) 5/1/2000(不可能的输入日期)
健壮性等价类测试用例
等价类划分测试举例
1. 三角形问题的等价类测试用例
(1)传统等价类划分测试用例设计
在三角形问题中,输入条件要求:
● 整数; ● 三个数; ● 取值在1到100之间
仔细分析三角形问题,可得出其等价类表。
1
三角形问题的等价类
号码 无效等价类 号码
有效等价类
整数
1
一边为非整数 二边为非整数 三边均为非整数
因此,变量x1和x2,的无效值分别为: x1<a,x1>d 无效等价类 和 x2<e,x2>g

黑盒测试方法2边界值分析法

黑盒测试方法2边界值分析法

<xmin,ynom>; <xmin+,ynom>; <xmax,ynom>; <xmax-,ynom>;
<xnom,ynom>;
整理课件
12
Y
c
d
a
bX
有两个输入变量的程序F的边界
值分析测试用例
整理课件
Logo
13
标准性(一般性)测试 Logo
对于一个含有n个变量的程序,保留其中一个变 量,让其余的变量取正常值,被保留的变量 依次取min、min+、nom、max-、max值,对每 个变量都重复进行。这样,对于一个有n个变 量的程序,边界值分析测试程序会产生4n+1 个测试用例。
15
健壮性测试 Logo
• 边界值分析测试的一种扩展,除了取5个边 界值外,还需要考虑采用一个略超过最大 值(max+)及略小于最小值(min-)的取值, 检查超过极限值时系统的情况
• 健壮性测试最有意义的部分不是输入,而 是预期的输出
整理课件
16
健壮性测试 Logo
• 对于一个含有n个变量的程序,保留其中一 个变量,让其余的变量取正常值,被保留 的变量依次取min、min+、min-,nom、max-、 max, max+值,对每个变量都重复进行。这 样,对于一个有n个变量的程序,边界值分 析测试程序会产生6n+1个测试用例。
x1 d
c a
b
整理课件
x2
35
习题: Logo
• 找零钱最佳组合

假设商店货品价格(R) 都不大于100元
(且为整数),若顾客付款(P)在100元内,现有
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

<xnom,ymin+>;
<xnom,ymax>;
<xnom,ymax->;
<xnom,ymax+>
<xnom,ynom>;
练习2:
有函数f(x,y,z),其中x∈[1900,2100],y∈[1,12], z∈[1,31]的。请写出该函数采用边界值分析法设计 的测试用例。
{ <2000,6,1>, <2000,6,2>, <2000,6,0><2000,6,30>, <2000,6,31>, <2000,6,29><2000,1,15>, <2000,2,15>, <2000,0,15>,<2000,11,15>, <2000,12,15>, <2000,13,15><1900,6,15>, <1901,6,15>, <1899,6,15><2099,6,15>, <2100,6,15>, <2101,6,15><2000,6,15> }
month超出[1,12]
常见的边界值
对16-bit 的整数而言 32767 和 -32768 是边界 屏幕上光标在最左上、最右下位置 报表的第一行和最后一行 数组元素的第一个和最后一个 循环的第 0 次、第 1 次和倒数第 2 次、最后一次
边界值分析法的原则
1)如果输入条件规定了值的范围,则应取刚达到这 个范围的边界的值,以及刚刚超越这个范围边界的 值作为测试输入数据。
边界值分析法的原则
4)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集 合的第一个元素和最后一个元素作为测试用例。
5)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结 构的边界上的值作为测试用例。
6)分析规格说明,找出其它可能的边界条件。
3、最坏情况测试
边界值分析采用可靠性理论中的单缺 陷假设,如果不考虑这种假设,那么, 应该关心当多个变量取极值时会出现 什么情况。
区间[a,b]和[c,d]是x、y的值域,程序F的输入定义域图所示,即带阴影 矩形中的任何点都是程序F的有效输入。
有两个变量x、y的程序的输入域
Y
c
d
a
bX
有两个变量x、y的程序的输入域
<xn有om,y两min>个; 输入变量的<程xmin序,ynoFm>的; 边界值分
<xnom,ymin+>;
输入日期超界 day超出[1,31]
测试用例
Test14 Test15 Test16 Test17 Test18 Test19
month
-1 1 2 11 12 14
day
year
15
2001
15
2001
15
2001
15
2001
15
2001
15
2001
预期输出
month超出[1,12] 2001.1.16 2001.2.16 2001.11.16 2001.12.16
year超出[1912,2050]
测试用例
Test8 Test9 Test10 Test11 Test12 Test13
month
6 6 6 6 6 6
day
year
0
2001
1
2001
2
2001
30
2001
31
2001
32
2001
预期输出
day超出[1,31] 2001.6.2 2001.6.3 2001.7.1
x1 d
c a
健壮最坏情况测试
b
x2
习题:
找零钱最佳组合
假设商店货品价格(R) 都不大于100元
(且为整数),若顾客付款(P)在100元内,现有
一个程序能在每位顾客付款后给出找零钱的最佳
组合(找给顾客货币张数最少)。 假定此商店的
货币面值只包括:50元(N50)、10元(N10)、 5元
(N5)、1元(N1) 四种。
强健壮等价类测试
特点 不考虑无效等价类,选取的测试用例只需覆盖到有效等 价类。 不考虑无效等价类,选取测试用例时,要根据等价类笛 卡儿积,各有效区间的组合都要覆盖到
基于单缺陷假设,考虑无效等价类,选取的测试用例要 覆盖每一个有效等价类和无效等价类,但时不能同时覆 盖两个无效等价类。
每个无效等价类和有效等价类的组合都要覆盖到,考虑 所有的有效和无效情况。
NextDate函数的边界值分析测试用例
测试用例
Test1 Test2 Test3 Test4 Test5 Test6 Test7
month
day
year
6
15
1911
6
15
1912
6
15
1913
6
15
1975
6
15
2049
6
15
2050
6
15
2051
预期输出
year超出[1912,2050]
1912.6.16 1913.6.16 1975.6.16 2049.6.16 2050.6.16
练习1:
有二元函数f(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>, }
健壮性测试
边界值分析测试的一种扩展,除了取5个边界值外,还需要考虑采用 一个略超过最大值(max+)及略小于最小值(min-)的取值,检查超过极 限值时系统的情况
健壮性测试最有意义的部分不是输入,而是预期的输出
健壮性测试
对于一个含有n个变量的程序,保留其中一个变量,让其余的变量取 正常值,被保留的变量依次取min、min+、min-,nom、max-、max, max+值,对每个变量都重复进行。这样,对于一个有n个变量的程序, 边界值分析测试程序会产生6n+1个测试用例。
N变量函数的最坏情况测试,会产生 5n个测试用例,而边界值分析只产生 4n+1个测试用例
健壮最坏情况测试
首先对每个变量进行包含略小于最 小值min-,最小值min,略高于最 小值min+,正常值nom,略低于最 大值max-,最大值max,和略大于最 大值max+,七个元素集合的测试, 然后对这些集合进行笛卡儿积计 算,以生成测试用例。
例如,一个循环条件为“≤”时,却错写成“<”;计数器发生少计 数一次。
边界值分析测试的基本思想
故障往往出现在输入变量的边界值附近。例如, 一个循环条件为“≤”时,却错写成“<”;计数 器发生少计数一次。
基于可靠性理论中称为“单故障”的假设,即有 两个或两个以上故障同时出现而导致软件失效的 情况很少,也就是说软件失效基本上是由单故障 引起的。
问题:NextDate函数NextDate函数包含三个变量
month、day和year,函数的输出为输入 日期后一天的日期。 要求输入变量 month、day和year均为整数值,并且满 足下列条件:
条件1 1≤ month ≤12
条件2 1≤ day ≤31
条件3 1912≤ year ≤2050
比如,一个输入文件应包括1~255个记录,则测试用例可取1和255, 还应取0及256等。
边界值分析法的原则
3)将规则1)和2)应用于输出条件,即设计测试 用例使输出值达到边界值及其左右的值。
例如,某程序的规格说明要求计算出"每月保险金 扣除额为0至1165.25元",其测试用例可取0.00及 1165.24、还可取一0.01及1165.26等。 再如一程序属于情报检索系统,要求每次"最 少显示1条、最多显示4条情报摘要",这时我们应 考虑的测试用例包括1和4,还应包括0和5等。
怎样用边界值分析法设计测试用例?
(1)首先确定边界情况。通常输入或输出等价类的边界就是应该着重测 试的边界情况。
(2)选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不 是选取等价类中的典型值或任意值。
边界值分析法设计测试用例
假设有两个变量x和y的程序,x、y在下列范围内取值:a≤x≤b c≤y≤d
最坏情况测试
使用这种思想生成最坏情况的测试用 例, 首先对每个变量进行包含最小值min, 略高于最小值min+,正常值nom,略低 于最大值max-和最大值max五个元素集 合的测试, 然后对这些集合进行笛卡儿积计算, 以生成测试用例。
x1 d
c a
最坏情况测试
b
x2
最坏情况测试
最坏情况测试比边界值分析测试以及 健壮性测试要彻底,边界值分析测试 用例是最坏情况测试用例的真子集。
软件测试
第3章 黑盒测试方法
——边界值分析法
1
复习
2
边界值分析法概要
3 为什么使用边界值分析法
4
边界值分析法的思想
5 边界值分析法设计测试用例
目录
第一部分:复习
弱一般等价类测试
等价类划分法
强一般等价类测试 弱健壮等价类测试
强健壮等价类测试
划分法 弱一般等价类测试 强一般等价类测试 弱健壮等价类测试
请结合等价类划分法和边界值分析法
相关文档
最新文档