边界值测试分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• (3)如果程序的规格说明给出的输入域或输 出域是有序集合,则应选取集合的第一元素和 最后一个元素作为测试数据。
• (4)如果程序中使用了一个内部数据结构, 则应当选择这个内部数据结构的边界上的值作 为测试数据。
• (5)分析规格说明,找出其他可能的边界条 件。
三、边界值分析
• 基本思想:使用输入变量的最小值(min)、 略大于最小值(min+) 、正常值(nom)、 略小于最大值(max-)和最大值(max)测试 用例。
x2 d
c
0
a
b
x1
图4-1-1 两个变量函数F的输入域
1、边界值分析-----单缺陷假设
• 失效极少是由两个或两个以上的缺陷同时发 生引起的。设计测试用例时,只让一个变量 取边界值,其余变量取正常值。
• {<x1nom,x2min>,<x1nom,x2min+> ,<x1nom,x2nom>, • < x1nom,x2max-> ,<x1nom,x2max>,<x1min,x2nom> ,
1. 数值的边界值
术语 Bit(位) Byte(字节) Word(字) Int(32位) K(千) M(兆) G(千兆)
范围或值 0或1 0~255 0~65535(单字)或0~4294967295(双字) -2147483648~2147483647 1024 11048576 1073741824
一、边界条件
• 边界条件就是一些特殊情况。一般的, 在条件c下,软件执行一种操作,对任意小 的值σ,条件c+σ或c-σ会执行另外的操作, 则c就是一个边界。
• 在多数情况下,边界条件是基于应用程 序的功能设计而需要考虑的因素,可以从 软件的规格说明或常识中得到。
• 例如:要求输入数据的范围是[0,100],则 输入条件的边界是0和100。
五、 案例
• 三角形问题 • NextDate函数
课程拓展
软件测试的发展方向之一——自动化测试
• 1、自动生成测试用例 • 2、自动运行 • 3、自动保存结果 • 4、自动化测试工具: • (1)AutoRunner • (2)Junit • (3)CppUnit
课程拓展
自动生成测试用例常用算法
7.7.2 边界值分析:
• 黑盒测试方法,对等价类划分
方法的补充。
软件边界与悬崖类似:
• 从长期的测试经验得知:如果在悬崖边可以自信安 大量的错误是发生在输入全下地。行走,平地就不在话 或输出范围的边界上,而如果软件在能力达到极限 不是在输入范围的内部。时况能下够就运不行会, 出那 什么 么正 问常 题情 。
例、某数据的取值范围为-1.0~1.0,测试数据可取-1.0、 1.0,以及-1.1、1.1。
(2)如果输入条件规定了值的个数,则应取最大个数、最小 个数、比最大个数多1,比最小个数少1的数作为测试输 入数据。
例、某文件有255个记录,测试数据可取0、1 ,以及255、256。
二、边界值分析法选取测试用例的原则:
0
a
b
x1
图2 两个变量函数F的健壮性测试用例
总结:对于有n个输入变量的程序,边界值分 析会产生6n+1个测试用例。是检测软件系统容 错性的重要手段。
例题1,例题2
五、最坏情况测试
• 拒绝单缺陷假设,关心的是当多个变量取 极值时出现的情况。
• 测试用例:首先获得每一个输入变量的集 合:最小值(min)、略大于最小值 (min+) 、正常值(nom)、略小于最大 值(max-)和最大值(max),然后对这些 集合进行笛卡尔积计算。
总结:对于有n个输入变量的程序,边界值分 析会产生4n+1个测试用例。
2、 边界值分析-----多缺陷假设
• 失效是由两个或两个以上缺陷同时 作用引起的。在设计测试用例时, 要求多个变量同时取边界值。
四、 健壮性边界测试
• 健壮性:在异常情况下,软件还能正常运行的 能力。可衡量软件对于规范要求以外的输入情 况的处理能力。
• 一些边界条件容易被人忽略,比如在文 本框中不是没有输入正确的信息,而是根 本就没有输入任何内容,然后就按“确认” 按钮。这种情况常常被遗忘或忽视了。所 以要考虑程序对默认值、空白、空值、零 值、无输入等情况的反应。
• 二、边界值分析法选取测试用例的原则:
(1) 如果输入条件规定了值的范围,则应取刚刚到达这个范 围边界的值,以及刚刚超过这个范围边界的值作为测试 输入数据。
表4-1-1 二进制数值的边界
字符 Null(空) Space(空格) /(斜杠) 0(零) :(冒号)
@
2.字符的边界
ASCII码值
字符
0
A
32
ຫໍສະໝຸດ Baidu
a
47
Z
48
z
58
‘(单引号)
64
{(大括号)
ASCII码值 65 97 90 122 96 123
表4-1-2 部分ASCII码值 表
3. 其他边界条件
<x1min+,x2nom>, <x1max-,x2nom> ,<x1max,x2nom>}
x2 d
c
0
a
b
x1
图1 两个变量函数F的边界值分析
• 例题1:二元函数f(x,y)的输入变量x,y分别满 足:X∈[1,12],y∈[1,31]。请用单缺陷假设 方法为其设计测试用例。
• 例题2:三元函数f(x,y,z)的输入变量x,y,z分 别满足: X∈[0,100], y∈[1,12],z∈[1,31]。 请用单缺陷假设方法为其设计测试用例。
• 1、随机算法(random algorithm,RA) • 2、遗传算法(genetic algorithm,GA) • 3、粒子群(particle swarm optimization,PSO)算法 • 4、蚁群优化(ant colony optimization,ACO)算法
x2 d
c
0
a
b
x1
图3 两个变量函数F的最坏情况测试用例
总结:对于有n个输入变量的程序,最坏情况 测试将会产生5n个测试用例。
健壮性最坏情况测试:最坏情况测试的扩展,使用 健壮性测试的七个元素集合的笛卡儿积,将会产生 7n个测试用例。
x2 d
c
0a
b
x1
图4 两个变量函数F的健壮性最坏情况测试用例
• 健壮的系统:对于规范要求以外的输入能够判 断出这个输入不符合规范要求,并能有合理的 处理方式的系统。
• 要选取7个值:最小值(min)、略大于最小值 (min+) 、正常值(nom)、略小于最大值 (max-)、最大值(max)、略小于最小值 (min-)略大于最大值(max+) 。
x2 d
c
• (4)如果程序中使用了一个内部数据结构, 则应当选择这个内部数据结构的边界上的值作 为测试数据。
• (5)分析规格说明,找出其他可能的边界条 件。
三、边界值分析
• 基本思想:使用输入变量的最小值(min)、 略大于最小值(min+) 、正常值(nom)、 略小于最大值(max-)和最大值(max)测试 用例。
x2 d
c
0
a
b
x1
图4-1-1 两个变量函数F的输入域
1、边界值分析-----单缺陷假设
• 失效极少是由两个或两个以上的缺陷同时发 生引起的。设计测试用例时,只让一个变量 取边界值,其余变量取正常值。
• {<x1nom,x2min>,<x1nom,x2min+> ,<x1nom,x2nom>, • < x1nom,x2max-> ,<x1nom,x2max>,<x1min,x2nom> ,
1. 数值的边界值
术语 Bit(位) Byte(字节) Word(字) Int(32位) K(千) M(兆) G(千兆)
范围或值 0或1 0~255 0~65535(单字)或0~4294967295(双字) -2147483648~2147483647 1024 11048576 1073741824
一、边界条件
• 边界条件就是一些特殊情况。一般的, 在条件c下,软件执行一种操作,对任意小 的值σ,条件c+σ或c-σ会执行另外的操作, 则c就是一个边界。
• 在多数情况下,边界条件是基于应用程 序的功能设计而需要考虑的因素,可以从 软件的规格说明或常识中得到。
• 例如:要求输入数据的范围是[0,100],则 输入条件的边界是0和100。
五、 案例
• 三角形问题 • NextDate函数
课程拓展
软件测试的发展方向之一——自动化测试
• 1、自动生成测试用例 • 2、自动运行 • 3、自动保存结果 • 4、自动化测试工具: • (1)AutoRunner • (2)Junit • (3)CppUnit
课程拓展
自动生成测试用例常用算法
7.7.2 边界值分析:
• 黑盒测试方法,对等价类划分
方法的补充。
软件边界与悬崖类似:
• 从长期的测试经验得知:如果在悬崖边可以自信安 大量的错误是发生在输入全下地。行走,平地就不在话 或输出范围的边界上,而如果软件在能力达到极限 不是在输入范围的内部。时况能下够就运不行会, 出那 什么 么正 问常 题情 。
例、某数据的取值范围为-1.0~1.0,测试数据可取-1.0、 1.0,以及-1.1、1.1。
(2)如果输入条件规定了值的个数,则应取最大个数、最小 个数、比最大个数多1,比最小个数少1的数作为测试输 入数据。
例、某文件有255个记录,测试数据可取0、1 ,以及255、256。
二、边界值分析法选取测试用例的原则:
0
a
b
x1
图2 两个变量函数F的健壮性测试用例
总结:对于有n个输入变量的程序,边界值分 析会产生6n+1个测试用例。是检测软件系统容 错性的重要手段。
例题1,例题2
五、最坏情况测试
• 拒绝单缺陷假设,关心的是当多个变量取 极值时出现的情况。
• 测试用例:首先获得每一个输入变量的集 合:最小值(min)、略大于最小值 (min+) 、正常值(nom)、略小于最大 值(max-)和最大值(max),然后对这些 集合进行笛卡尔积计算。
总结:对于有n个输入变量的程序,边界值分 析会产生4n+1个测试用例。
2、 边界值分析-----多缺陷假设
• 失效是由两个或两个以上缺陷同时 作用引起的。在设计测试用例时, 要求多个变量同时取边界值。
四、 健壮性边界测试
• 健壮性:在异常情况下,软件还能正常运行的 能力。可衡量软件对于规范要求以外的输入情 况的处理能力。
• 一些边界条件容易被人忽略,比如在文 本框中不是没有输入正确的信息,而是根 本就没有输入任何内容,然后就按“确认” 按钮。这种情况常常被遗忘或忽视了。所 以要考虑程序对默认值、空白、空值、零 值、无输入等情况的反应。
• 二、边界值分析法选取测试用例的原则:
(1) 如果输入条件规定了值的范围,则应取刚刚到达这个范 围边界的值,以及刚刚超过这个范围边界的值作为测试 输入数据。
表4-1-1 二进制数值的边界
字符 Null(空) Space(空格) /(斜杠) 0(零) :(冒号)
@
2.字符的边界
ASCII码值
字符
0
A
32
ຫໍສະໝຸດ Baidu
a
47
Z
48
z
58
‘(单引号)
64
{(大括号)
ASCII码值 65 97 90 122 96 123
表4-1-2 部分ASCII码值 表
3. 其他边界条件
<x1min+,x2nom>, <x1max-,x2nom> ,<x1max,x2nom>}
x2 d
c
0
a
b
x1
图1 两个变量函数F的边界值分析
• 例题1:二元函数f(x,y)的输入变量x,y分别满 足:X∈[1,12],y∈[1,31]。请用单缺陷假设 方法为其设计测试用例。
• 例题2:三元函数f(x,y,z)的输入变量x,y,z分 别满足: X∈[0,100], y∈[1,12],z∈[1,31]。 请用单缺陷假设方法为其设计测试用例。
• 1、随机算法(random algorithm,RA) • 2、遗传算法(genetic algorithm,GA) • 3、粒子群(particle swarm optimization,PSO)算法 • 4、蚁群优化(ant colony optimization,ACO)算法
x2 d
c
0
a
b
x1
图3 两个变量函数F的最坏情况测试用例
总结:对于有n个输入变量的程序,最坏情况 测试将会产生5n个测试用例。
健壮性最坏情况测试:最坏情况测试的扩展,使用 健壮性测试的七个元素集合的笛卡儿积,将会产生 7n个测试用例。
x2 d
c
0a
b
x1
图4 两个变量函数F的健壮性最坏情况测试用例
• 健壮的系统:对于规范要求以外的输入能够判 断出这个输入不符合规范要求,并能有合理的 处理方式的系统。
• 要选取7个值:最小值(min)、略大于最小值 (min+) 、正常值(nom)、略小于最大值 (max-)、最大值(max)、略小于最小值 (min-)略大于最大值(max+) 。
x2 d
c