黑盒测试之边界值

二、黑盒测试——边界值

基于规格说明的测试

功能性测试:

  基本观点:任何程序都可以看做是将输入定义域取值映射到输出值域的函数。

  测试依据:软件的需求规格说明

  优点:与软件如何实现无关,若实现发生变化,测试用例仍有用

测试用例设计可以与实现并行进行,可压缩总的项目开发时间

  缺点:测试用例之间可能存在严重的冗余

可能有未测试的软件漏洞

结构性测试:

  基本观点:实现是已知的

  测试依据:内部实现细节

  优点:可以严格描述要测试的确切内容

测试覆盖指标的定义和使用,提供明确描述软件测试项范围的方法,有利于测试管理

  缺点:不能表示没有编码实现的行为

边界值(边界值分析关注的是输入空间的边界,错误更可能出现在输入变量的极值附近)

对于一个n变量函数,边界值分析会产生 4n1个测试用例

边界值测试特点和局限性:

  取决于变量本身的性质(类型).

  边界值分析对布尔变量没有什么意义.

  如果被测程序是多个独立变量的函数,这些变量受物理量的限制,则很适合边界值分析.

  边界值分析假设变量是完全独立的.

  单缺陷假设:失效极少是由两个(或多个)缺陷的同时发生引起的

健壮性测试(边界值分析的一种简单扩展):还要通过采用一个略超过最大值(max)的取值,  及一个略小于最小值(min-)的取值

最坏情况测试(五元素集合进行笛卡儿积计算):去除单缺陷假设,考虑当多个变量取极值时  会出现什么情况

健壮最坏情况测试:使用健壮性测试的七元素集合的笛卡儿积

特殊值测试:运用得最广泛的一种功能性测试.,特别依赖测试人员的能力

边界值小结:

  这类测试方法都基于一种假设:输入变量是真正独立.

  这些方法的区别是:有效值与无效值;单缺陷与多缺陷假设.

  定义域还可以用于内部变量,如循环控制变量、索引和指针,健壮性测试时测试内部变量的一种好的选择。

  既不能进行完备的测试,同时存在大量冗余

posted @ 2021-12-31 17:21  ljllh  阅读(282)  评论(0)    收藏  举报