软件测试方法——黑盒测试

动态测试之黑盒测试

把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。

(1)等价分类法

把所有可能的输入数据(有效的和无效的)划分成若干个等价的子集(称为等价类),使得每个子集中的 一个典型值在测试中的作用与这一子集中所有其它值的作用相同,可从每个子集中选取一组数据来测试程序。

例:

(1)如果输入条件规定了取值范围,可定义一个有效等价类和两个无效等价类。
(2) 如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可确立一个有效等价类和一个无效等价类。
(3) 如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类。
(4) 如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。这时可为 每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。
(5) 如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

在某一PASCAL语言版本中规定:“标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个。”     并且规定:“标识符必须先说明,再使用。”  “在同一说明语句中,标识符至少必须有一个。”

(2)边界值分析法

人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。

于是:

把测试的重点放在各个等价类的边界上,选取正好等于,刚刚大于,或刚刚小于边界的值做为测试数据,并据此设计出相应的测试用例。

(3)错误推测法

人们也可以靠经验和直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的例子。

显然,它比前两种方法更多地依靠测试人员的直觉和经验。所以,一般都先用前两种方法设计测试用例,然后用猜错法补充一些例子作为辅助手段。测试地方大都是一些空值、零值、缺省值和格式、越界处理。

(4)因果图法
适合于描述对于多种条件的组合,相应产生多个动作的形式来设计测试用例。最终生成判定表,检查程序输入条件的各种组合情况。


因果图法的基本步骤
(1) 分析软件规格说明描述中,哪些是原因 (即输入条件或输入条件的等价类),哪些是结果 (即输出条件),并给每个原因和结果赋予一个标识符。
(2) 分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系? 根据这些关系,画出因果图。
(3) 由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。
(4) 把因果图转换成判定表。
(5) 把判定表的每一列拿出来作为依据,设计测试用例。


黑盒测试方法是在程序接口上进行测试,主要是为了发现以下错误:
1)是否有不正确或遗漏了的功能?
2)在接口上,输入能否正确地接受? 能否输出正确的结果?
3)是否有数据结构错误或外部信息(例如数据文件)访问错误?
4)性能上是否能够满足要求?
5)是否有初始化或终止性错误? 
 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值