软件测试——功能测试:边界值测试
- 边界值分析
-
- 边界的定义
- 边界点的定义
- 边界值分析
- 测试边界线
- 边界值分析的局限性
- 健壮性测试
- 最坏情况测试
-
- 健壮最坏情况测试用例
- 最坏情况测试的局限性
- 特殊值测试
- 随机测试
- 边界值测试使用技巧
-
- 选择测试用例的原则
边界是指,相当于输入等价类和输出等价类而言,稍高于其边界值及稍低于其边界值的特定情况,如图一个例子:
- 边界值分析的基本思想是:使用在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值
- 边界值分析的假设:“单缺陷”假设,即失效极少是由两个(或多个)缺陷的同时发生引起的
- 边界值分析测试用例的获得:只使一个变量取极值,其余变量取正常值
- 对于一个n变量的函数,边界值分析会产生4n+1个测试用例
- 边界值分析也是一种黑盒测试
边界值分析是考虑边界条件而选取的一种功能测试的方法,边界值分析的关注点在于输入空间的边界,以标识测试用例,因为软件错误更可能出现在输入变量的极值附近。
人们长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围内部。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
推导:边界值分析的假设:“单缺陷”假设。
方法:如一个n变量函数,使除一个以外的所有变量取正常值,使剩余的那个变量分别取最小值、略高于最小值、正常值、略低于最大值和最大值,对于每个变量都重复进行。
- 一个变量取边界值,其他变量取正常值 即:{a1边界集合} X {a2一个正常值} X {a3一个正常值} X {a4一个正常值}…….共n 个集合。
- | {边界集合} |=4 ,| {一个正常值} |=1, |{a1边界集合} X {a2一个正常值} X {a3一个正常值} X {a4一个正常值}…….|=4 ,共4*n个输入值。
- 最后补上一正常值,所有变量都取正常值 。
- 所以共计4*n+1。
如下图:
- 使用边界值分析方法设计测试用例,首先应确定边界情况。
- 健壮性是指在异常情况下,软件还能正常运行的能力。
- 健壮性有两层含义:
- 容错能力
- 输入错误的数据类型。
- 输入定义域之外的数值。
- 恢复能力
- 系统能否重新运行;
- 有无重要的数据丢失;
- 是否毁坏了其它相关的软件硬件。
- 容错能力
- 对于一个n变量的函数,健壮性分析会产生6n+1个测试用例。
- 测试用例不充分
- 不能发现测试变量之间的依赖关系
- 不考虑含义和性质,没有利用理解和想象
- 只能作为初步测试用例使用
- 随机测试的基本思想:
- 正常值与健壮值
- 单缺陷与多缺陷设计
- 如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据;
- 如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1、比最小个数少1的数做为测试数据;
- 如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个和最后一个元素作为测试用例;
- 如果程序用了一个内部结构,应该选取这个内部数据结构的边界值作为测试用例;
- 分析规格说明,找出其他可能的边界条件。
这类测试方法都有一种假设:输入变量的真正独立性(必须保证)
以上介绍的测试方法的区别:
运用好这些差别就能产生较好的测试。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
边界确定的方法:测试临近边界的合法数据,以及刚超过边界的非法数据。
越界测试
(对于最大值)通常简单地加1或很小的数
(对于最小值)通常简单地减1或很小的数
容错性测试通常构造一些不合理的输入来引诱软件出错,例如:
(1)输入错误的数据类型。
(2)输入定义域之外的数值。
恢复测试重点考察一下几项:
(1)系统能否重新运行;
(2)有无重要的数据丢失;
(3)是否毁坏了其它相关的软件硬件。
除了变量的5个边界分析取值还要考虑略超过最大值(max)和略小于最小值(min)时的情况,以两个函数变量为例,如图: