软件测试边界值分析
来源:互联网 发布:六盘水市第三中学知乎 编辑:程序博客网 时间:2024/05/18 02:42
1. 边界条件测试
人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上的,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
边界值分析关注的是输入空间的边界,以标识测试用例。边界值测试背后的基本原理是错误更可能出现在输入变量的极值附近。例如,循环条件可能在应该测试≤时测试了<,并且计数器常常“少记一次”。在做三角形计算时,要输入三角形的3个边长A、B和C。这3个数值应当满足A>0,B>0,C>0,A+B>C,A+C>B,B+C>A,才能构成三角形。但如果有任何一个不等式的“>”错写成“≥”,那就不能构成三角形。问题恰恰出现在容易被忽视的边界附近。这里所说的边界是指相当于输入等价类和输出等价类而言,稍高于或稍低于其边界值的一些特定情况。
边界值分析的基本思想是使用在最小值、略高于最小值、正常值、略低于最大值和最小值处取输入变量值。边界值分析的下一个部分基于一种关键假设,在可靠性理论叫做“单缺陷”假设。这种假设是说,失效极少是由两个(或多个)缺陷的同时发生引起的。因此,边界值分析测试用例的获得,通过使所有变量取正常值,只使一个变量取极值。
(以上内容摘自:http://hi.baidu.com/ermao0927/blog/item/fb334a4bc0dfa6f683025c27.html)
2. 次边界条件测试
上面所讲的是普通的边界条件,在产品说明书中有定义,或者在软件的过程中确定。但有些边界在软件内部,最终用户几乎看不到,但是软件测试仍有必要检查,这样的边界条件成为次边界条件或者内部边界条件。寻找这样的边界条件,不要求软件测试员成为程序员或者具有阅读源代码的能力,但是确实要求大体了解软件的工作方式。2的乘方和ASCII表是这样的两个例子:
--------------------------------------------------------------------------------
2的乘方
术语
范围或值
位bit
0或1
双位doublebit
0~15
字节Byte
0~255
字word
0~65,535或者0~4,294,967,295
千K
1,024
兆M
1,048,576
亿
1,073,741,824
万亿
1,099,511,627,776
计算机和软件的基础是二进制数。因此二的乘方是作为边界条件的重要数据。如:在通讯软件中,带宽或者传输信息的能力总是受限制,因此软件工程师会尽一切努力在通讯字符串中压缩更多数据。其中一个方法就是把信息压缩到尽可能小的单元中,发送这些小单元中最常用的信息,在必要时再扩展为大一些的单元。假设某种通讯协议支持256条命令。软件将发送编码为一个双位数据的最常用的15条命令;如果用到第16到256之间的命令,软件就转而发送编码为更长字节的命令。这样,软件就会根据双位/字节边界执行专门的计算和不同的操作。
在建立等价区间的时候,要考虑是否需要包含2的乘方边界条件。例如:软件接受1~1000范围内的数字,那么合法区间除了1和1000,也许还有2和999之外,还应该有临近2的乘方次边界:14,15,16以及254,255和256。
(以上片段摘自:http://www.facetest.net/forums/wdbread.php?forumid=3&filename=f_109)
- 软件测试边界值分析
- 软件测试- 测试用例之边界值分析法
- 软件测试- 测试用例之边界值分析法
- 软件测试学习笔记之边界值分析
- 软件测试基础——边界值分析
- 软件测试边界值,等价
- 【软件测试】黑盒测试技术——等价类划分和边界值分析
- 软件测试之黑盒测试(等价类划分,边界值分析,判定表驱动)
- 软件黑盒测试之边界值方法
- 软件测试-边界值和等价类
- 黑盒测试-边界值分析方法
- 测试用例之边界值分析
- 浅析黑盒测试中的边界值分析
- 黑盒测试_边界值分析法
- 软件测试基础(三)---黑盒测试之边界值法
- 软件测试方法-等价类、边界值、因果图
- 黑盒测试用例设计模式-边界值分析(上)
- 黑盒测试之边界值分析,因果图等
- TimeStamp 设置 default值
- 删除文件, 可以删除只读文件
- 极其郁闷的一件事情 不允许使用PL/SQL Developer于此数据库
- 十二、Qt 2D绘图 之 坐标系统
- RichTextBox.Rtf 属性设置居然会触发两次TextChanged事件
- 软件测试边界值分析
- photoshop 技巧
- 2030肢解中国 美国全球战略与中国危机
- 面向对象与领域建模
- DWR 的 DWRUtil.addRows() 函数的使用
- MySql常见错误
- C++ STL IO流 与 Unicode (UTF-16 UTF-8) 的协同工作
- linux heartbeat配置
- 在Eclipse wst中指定webapp目录时,需要修改的文件.