【黑盒测试用例设计】测试方法之边界值分析法

原理: 针对输入或输出范围的边界值进行测试。

通常是针对有效等价类的边界值进行测试。

考虑范围:变量的最大值、最小值、中间值、比最大值大的值、比最小值小的值。

适用场景:有范围的输入或输出。

使用技巧:通常结合等价类划分法使用,是作为对等价类划分法的有效补充。

应用实例

  • 如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

例如,如果程序的规格说明中规定:“重量在10公斤至50公斤范围内的邮件,其邮费计算公式为……”。作为测试用例,我们应取10及50,还应取10.01,49.99,9.99及50.01等。

  • 如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。

例如,一个输入文件应包括1~255个记录,则测试用例可取1和255,还应取0及256等。

  • 将规则1)和2)应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值。

例如,某程序的规格说明要求计算出"每月保险金扣除额为0至1165.25元",其测试用例可取0.00及1165.24、还可取一0.01及1165.26等。

例如,一程序属于情报检索系统,要求每次"最少显示1条、最多显示4条情报摘要",这时我们应考虑的测试用例包括1和4,还应包括0和5等。

  • 如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。

  • 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

  • 分析规格说明,找出其它可能的边界条件。

应用实例

  1. 几种边界值分析法模型

一般性边界值、健壮性边界值、最坏边界值、最坏健壮性边界值。

(1)边界条件

如果软件在能力达到极限时能够运行,那么在正常情况下一般也不会有什么问题。普通边界条件在产品说明书中有定义,或在用户实际使用中确定,比较容易发现。

(2)次边界条件

有些边界值在软件内部,称作内部边界条件,要测试到这些内部边界,要求大体了解软件的工作方式,如2的乘方和ASCII表。

(2.1)2的乘方:

计算机和软件的计数基础是二进制数,在建立等价区间时,要考虑是否需要包含2的乘方边界条件。
术语 范围或值 术语 范围或值
0或1 1,024
双位 0~15 1,048,576
字节 0~255 亿 1,073,741,824
0~65,535 万亿 1,099,511,627,776

例如,联系人号码最多支持500个字符,除考虑0,1,2和499,500,501外,还要覆盖任何可能的2的乘方次边界,包含临近双位边界的14、15和16,以及临近字节边界的254、255和256。

(2.2)ASCII表

另一个常见的次边界条件是ASCII字符表。

0~9的后面ASCII值是48~57.
斜杠字符“/”在数字0的前面,而冒号字符“:”在数字9的后面。
大写字母A~Z对应65~90.
小写字母对应97~122,这些情况都代表次边界条件。例如,联系人的邮件地址编辑文本框只接受用户输入字母A~Z、a~z、0~9、“_”、“@”、“.”等字符,就应该在非法区间中包含ASCII表中这些字符前后的值包括:问号“?”、开方括号“[”、开花括号“{”、斜杠“/”、“:”脱字符“^”、开单引号“`”、减号/破折号“-”等。

(3)设计原则

3.1 如果输入条件规定了值的范围,刚刚超越范围边界的值,在范围内紧贴边界的值;
3.2 如果输入条件规定了值的个数,则用最大个数,最大个数多1,最小个数,最小个数少1的数作为测试数据;
3.3 前面两条对输出条件同样适用;
3.4 如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个和最后一个元素作为测试数据;
3.5 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构边界上的值作为测试数据。
3.6 分析规格说明,找出其他可能的边界条件。
  1. 三角形问题的边界值分析测试用例

在三角形问题描述中,除了要求边长是整数外,没有给出其它的限制条件。在此,我们将三角形每边边长的取范围值设值为[1, 100] 。

2.1 三角形边长取值为:0,101;
2.2 三角形边长取值为:50;
  1. NextDate函数的边界值分析测试用例

在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。

3.1 year的边界值取值为1911,2051;1970;
3.2 mouth的边界值取值可以为:0, 13; 6;
3.3 day的边界值取值可以为:0, 32, 15;

2020-12-15:【黑盒测试用例设计】测试方法之边界值分析法相关推荐

  1. 测试用例设计方法_边界值分析法(游戏向)

    一.前言    经过前面的文章学习,我们了解了行业发展.Bug相关的内容.游戏测试流程以及测试方案的编写,本文章将讲解测试用例设计方法之 "边界值分析法" 详细讲解,快来和我一起看 ...

  2. 常用测试用例设计方法之边界值分析法

    边界值分析法 边界值分析法是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例. 实践证明,在设计测试用例时,对边界附近的处理必给予足够的重视,为检验边界附近 ...

  3. 软件测试用例设计方法之边界值分析法

    边界值分析 1)概念 边界值分析方法的理论基础是假定大多数的错误是发生在各种输入条件的边界上,如果在边界附近的取值不会导致程序出错,那么其它的取值导致程序错误的可能性也很小. 2)边界值分析法设计用例 ...

  4. 【黑盒测试用例设计方法4】因果图法及其示例

    [黑盒测试用例设计方法4]因果图法及其示例 因果图可以描述系统的输入和输出的因果关系以及输入和输入之间的约束关系.根据系统输入和输出之间的因果图可以得到判定表,因果图和判定表两种方法经常一起使用. 输 ...

  5. 测试用例的设计方法:边界值分析法

    欢迎大家关注我的个人公众号:小朱谈软件测试,全是干货哦. 什么是边界值分析法? 定义:对输入或输出的边界值进行测试的一种黑盒测试方法. 测试要点:选取正好等于.刚刚大于.刚刚小于边界的值.相当于对于等 ...

  6. 软件测试中什么是正交分析法,测试用例设计方法之正交分析法的好处

    John Lee写的一篇"Tricks of Software testing"中提到的: 5)黑盒测试的典型方法: 正交矩阵法是减少测试用例的有效方法.等价类划分的缺点是没有考虑 ...

  7. 黑盒测试方法之边界值分析法

    边界值分析法 概念 需求示例1 测试用例分析设计1 需求示例2 测试用例分析设计2 总结 概念 很多错误发生在输入或输出范围的边界上,因此针对各种边界情况设置测试用例,可以更有效地发现缺陷. 边界值分 ...

  8. 软件测试 边界值分析法,[转] 软件测试方法_边界值分析法

    目录: ①边界值分析法的介绍和概念 ②边界值分析法的原理和思想 ③单缺陷假设和多缺陷假设 ④边界值测试数据类型 ⑤内部边界值分析 ⑥各类边界值测试介绍 ⑦基于边界值分析方法选择测试用例的原则 ⑧边界值 ...

  9. 测试用例设计方法:场景分析法(又名流程分析法)

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击人工智能教程 场景分析法 分析软件应用的场景,从用户的角度出发,从场景的角度来设计测试用例,是一种面向用 ...

最新文章

  1. python能绘制统计图吗-使用Python绘制图表大全总结
  2. C语言模拟质点运动轨迹坐标,C语言定时器的使用 计算质点运动的移位
  3. 十问十答 Apache 许可证
  4. python浪漫代码_五行Python代码实现批量抠图
  5. 取得程序运行的目录[360度]
  6. 运算符重载——拷贝构造函数与赋值运算符的区别、如何实现赋值运算符的深拷贝
  7. Yaf引入oss sdk
  8. android播放vp8透明,Androids 使用MediaCodec在TV端播放不了视频
  9. Import REC修复的时候找不到被调试程序进程
  10. KMS激活报错0x8007000D
  11. Python爬虫实例之淘宝商品比价定向爬取!爬虫还是很有意思的!
  12. 虚拟服务器IP地址创建,虚拟服务器的ip地址
  13. 显示器购买攻略【小白必看】
  14. 【微服务】165:导入数据到索引库
  15. 【输入一个数并判断是质数还是合数】
  16. 因为老板的暴脾气,我裸辞了
  17. matlab二维怎么定义,matlab中如何定义一个10*2的二维数组,用来储存后面算出的数值...
  18. 五一劳动节 甩开压力“嗨”起来
  19. 易语言超文本浏览框,无法打开页面
  20. U盘的另类用途(刷bios,dos杀毒,u盘密匙)

热门文章

  1. 终于搞定美团app人气榜提取的数据分类工作
  2. 深挖独立站为何在中东大热
  3. 我的世界java村民繁殖条件,我的世界村民无限繁殖教程 教你村民怎么生孩子
  4. [深度学习] OpenVINO开发:C++ API推理步骤实现
  5. Android开发本地及网络Mp3音乐播放器(十)最近播放界面与数据保存更新
  6. hadoop(hdfs)常见面试题
  7. 详解rails命令行
  8. 构建知识体系(2):如何构建
  9. 搜狐云景openapi初探
  10. 散户炒股七大绝招 巨额获利风险小 (网摘)