测试用例设计方法---边界值分析法

2021-10-06

边界值分析法 (是对等价类划分方法的补充)


基本思路边界值分析也是一种黑盒测试方法,是对等价类分析方法的一种补充,由长期的测试工作经验得知,大量的错误是发生在输入或输出的边界上。因此针对各种边界情况设计测试用例,可以查出更多的错误。



编写测试用例的步骤

(1) 根据被测对象的输入(或输出)要求确定边界值。

(2) 选取等于、刚刚大于、刚刚小于边界的值作为测试数据。

注:基本思想是在最小值(min)、略高于最小值(min+)、正常值(nom)、略低于最大值(max-)和最大值(max)等处取值。



单缺陷假设和多缺陷假设

单缺陷假设:

是指“失效极少是由两个或两个以上的缺陷同时发生引起的”。要求测试用例只使一个变量取极值,其他变量均取正常值;

多缺陷假设:

是指“失效是由两个或两个以上缺陷同时作用引起的”,要求测试用例时同时让多个变量取极值。



边界值测试分类


单变量假设

多变量假设

有效值

一般边界值

一般最坏情况边界值

无效值

健壮性边界值

健壮最坏情况边界值




一般边界值

仅考虑有效区间单个变量边界值(一般边界值):用最小值、略高于最小值、正常值、略低于最大值和最大值。

如果被测变量个数为n,则测试用例个数为4n+1

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]




例子

有函数fx,y,z,其中x[1900,2100],y[1,12],z[1,31]的。请写出该函数采用基本边界值分析法设计的测试用例?

解:

对于包含3个变量的程序,采用边界值分析法,至少要产生4*3+113个用例

<2000,6,1>

<2000,6,2>

<2000,6,30>

<2000,6,31>

<2000,1,15>

<2000,2,15>

<2000,11,15>

<2000,12,15>

<1900,6,15>

<1901,6,15>

<2099,6,15>

<2100,6,15>

<2100,6,15>





一般最坏情况边界值

仅考虑有效区间多个变量边界值同时作用(一般最坏情况边界值):用各个变量最小值、略高于最小值、正常值、略低于最大值和最大值的笛卡尔积

如果被测变量个数为n,则测试用例个数为5n

函数y=f(x1,x2)输入变量的取值范围分别为:x1[a,b]x2[c,d]




健壮边界值

同时考虑有效区间和无效区间单个变量边界值(健壮边界值):除了最小值、略高于最小值、正常值、略低于最大值、最大值,还要有略超过最大值略小于最小值的值。

如果被测变量个数为n,则测试用例个数为6n+1

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]




健壮最坏情况边界值

同时考虑有效区间和无效区间多个变量边界值同时作用(健壮最坏情况边界值):用各个变量最小值、略高于最小值、正常值、略低于最大值、最大值、略超过最大值略小于最小值笛卡尔积

如果被测变量个数为n,则测试用例个数为7n

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]




例子:新浪博客图片上传,要求如下:

1. 上传文件大小不超过5M



以健壮边界值的标准可选取5M(正好等于)、5.1M(刚刚大于)、3M(正常值)0.1M(略高于最小值)4.9M(略小于最大值)最为边界值来测试。

序号

输入及操作说明

期望的测试结果

1

5M

符合要求

2

5.1M

不符合要求

3

3M

符合要求

4

0.1M

5

4.9M



边界值附近的数据确定的几种方法

边界值

测试用例的设计思路

字符

起始-1个字符/结束+1个字符

假设一个文本输入区域允许输入1~255个字符,输入1个和255个字符作为有效等价类;输入0个和256个字符为无效等价类,这几个数值都属于边界条件值

数值

开始位-1/结束位+1

数据的输入域为1~999,其最小值为1,最大值为999,则01000为边界值

空间

小于空余空间一点/大于满空间一点

测试数据存储时,使用比最小剩余空间大一点(几千字节)的文件作为最大值检验的边界条件

方向

刚刚超过/刚刚低于


报表

第一行和最后一行


数组

第一个和最后一个下标元素


数据类型

16位整型数据,32767-32768


循环结构

2次和倒数第2次循环




数值的边界值检验

范围或值

(b)

0 1

字节(B)

0~255

(Word)

0~65 535(单字)0~4 294 967 295(双字)

(KB)

1024

(MB)

1 048 576

(GB)

1 073 741 824

万亿(TB)

1 099 511 627 776




字符的边界值检验

字符

ASCII码值

字符

ASCII码值

(NULL)

0

A

65

空格(SPACE)

32

B

66

斜杠(/)

47

Y

89

冒号(:)

58

Z

90

分号(;)

59

左中括号[

91

<

60

反斜杠(\)

92

=

61

右中括号]

93

>

62

单引号(‘)

96

?

63

a

97

@

64

b

98

0

48

y

121

9

57

z

122




练习题

输入三个不超过200的整数,这三个值分别代表三角形三条边的长度,请判断这三个数构成的三角形是等边三角形,等腰三角形还是不等边三角形并将结果打印出来


回复“边界值练习”,获得练习题参考答案

回复“基础篇下”,获取“软件测试用例设计--基础篇(下)”  

回复“等价类”,获取“软件测试用例设计方法--等价类划分法”详细教程

回复“错误推测”,获取“软件测试用例设计方法--错误推测法”详细教程






相关文章

测试用例编写及设计方法

2021-10-06
二、边界值分析法边界条件指的是输入和输入等价类中刚好处于边界、或超过边界或小于边界的状态.与等价划分的区别:边界值分析...

如何运用等价类划分法和边界值分析法写高质量测试用例?

2021-10-06
推荐阅读点击阅读☞【测试近距离】购置200多万房产的高颜值95后学长来咯!点击阅读☞【喜报】T143+T144 高薪大满贯!上海平均...

测试设计方法(二):边界值分析法

2021-10-06
方法简介边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法.所谓边界值,是指相对于输入等价类和输出等价类而...

测试从零开始-No.6-测试用例设计方法(等价类+边界值)

2021-10-06
常见的用例设计方法等价类划分法(适用于输入项少,输入项的属性或者特性相同) 边界值分析法(适用于有范围约束的情况)判定表...

如何运用等价类划分法和边界值分析法写高质量测试用例?

2021-10-06
针对这种有较多输入框且长度有限制的功能模块,我们一般采用等价类划分和边界值分析法来设计测试用例.等价类划分等价类划分是...

【干货】PowerMill-残留边界参数分析

2021-10-06
边界由围绕这些区域的闭合轮廓构成.之后,可以使用较小的刀具加工这些区域,以避免重新加工整个模型.检测材料厚于:输入分界...

测试用例设计方法---边界值分析法

2021-10-06
边界值分析法 (是对等价类划分方法的补充)基本思路:边界值分析也是一种黑盒测试方法,是对等价类分析方法的一种补充,由长期...

测试用例设计之边界值测试痛点解析(上)

2021-10-06
说到边界值测试用例设计,很多初学者可能都在这个上面摔过跟头.因为测试产品的边界值,听起来似乎非常容易,但真当做起来,却...

临界点分析法(Tipping point analysis)

2021-10-06
临界点分析法是近些年监管机构比较认可的方法之一,它有明显区别于其他方法的优点.接下来会分别从背景,定义和应用,在后文中...

软件测试理论-4

2021-10-06
一 边界值什么是边界?边界是指对于输入等价类和输出等价类而言,稍高于其边界值及稍低于其边界值的一些特定情况.边界值分析法...

随机推荐

计算机及应用专业介绍

2021-09-25
专业概述 本专业培养适应计算机技术在企事业单位中发展、应用的需要...核心专业课程介绍 1、《数据库系统原理》:《数据库系统原理》是高等教育自学考试计算机及应用专业考试计划中的一门核心课程...就业指导 计算机及应用专业的就业前景很不错,市场经济的发展、计算机应用的家庭化、普及化,信息产业的规模化,推动了计算机技术人才市场的发展...

数据结构——基于C语言的描述|文末赠书

2021-09-23
附录给出全书习题的部分参考答案.全书采用类C语言作为数据结构和算法的描述语言,随书配备电子教案,以及第11章实验的源代码...

由浅入深,走进中级工程师都未必知道的 JavaScript 时间处理冷知识

2021-05-12
常见时间处理场景JS判断某年某月有多少天JavaScript里面的new Date("xxxx/xx/xx")这个日期的构造方法当传入的是"xxxx/xx/0"(0号...

WebStrom 2018安装教程

2021-04-28
“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等.与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能.--来源于...

Indesign让我作品集少花1w...附:排版教程

2021-03-07
Indesign排版素材大全--为什么大多数设计师都会做高端设计效果图,却往往不能够排出一个好看的版式?排版不仅需要你的图高端大...

D. de Villepin : "une Ceinture, une Route" un espoir pour chacun

2020-10-18
parce qu'il ne s'agit pas seulement de développer les activités des entreprises, les liens entre les Etats, mais il s'agit aussi de développer...

干货 | Python 常见的17个错误分析!

2018-07-18
尝试修改string的值 导致“TypeError: 'str' object does not support item assignm...在字符串首尾忘记加引号 导致“SyntaxError: EOL while scanning string literal” 08变量或者函数名拼写错误 导致“NameError: name 'fooba' is not defined” 09 方法名拼写错误 导致 ...

专业巡礼│江阳城建职业学院软件技术专业

2016-10-12
软件工程、软件测试技术.2. 手机软件开发方向专业课程:计算机应用基础、C语言程序设计、数据结构、算法基础、数据库基础、...

《信号与线性系统》第二版课后答案(阎鸿森著、西安交通大学出版社)

2016-04-16
有些答案数量有几百页,需要稍微等待一下答案载入在看点这里

技术16期:数据加工的开源任务调度系统解决方案 Dolphin Scheduler

2015-03-13
前言数据从来不是独立存在的,对数据进行处理的过程为数据加工,数据加工流程之间是存在依赖关系的,为了解决定时和依赖问题,...