菜鸟笔记--软件测试--黑盒测试

黑盒测试技术注重测试软件的功能性需求,即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件,用于辅助白盒测试发现其他类型的错误。黑盒测试技术包括:功能分解法,等价类划分,边界值分析法,因果图法,随机测试,猜错法等。

功能分解法

功能分解是将需求规格说明中的每一个功能加以分解,确保各个功能被全面测试,功能分解的步骤:

使用程序设计中的功能抽象方法把程序分解为功能单元

使用数据抽象方法产生测试每个功能单元的数据

在功能抽象中,程序被看作一种抽象的功能层次,每个层次可标识被测试的功能,层次结构中的某一功能由其下一层功能定义,按照功能层次进行分解,可以得到众多的最低层次的子功能,以这些子功能为对象,设计测试用例。

在数据抽象中,数据结构可以由抽象数据类型的层次图来描述,每个抽象数据类型有其取值集合,程序的每一个输入和输出量的取值集合用数据抽象来描述。

等价类划分法

等价类划分法是一种典型的黑盒测试用例设计方法。等价划分是在分析需求规格说明的基础上,把程序的输入域划分为若干个部分,然后在每部分中选取代表性数据形成测试用例。所谓的等价类,是被测试程序输入域的一个子集,该输入集合中的数据与揭示程序中的错误是等价的。因此,对某等价类中的代表值的测试就相当于对等价类中的所有值进行测试。所谓有效等价类,是指等价类中的输入数据是符合需求规格说明的,而无效等价类是值该等价类中的数据是违反需求规格说明的,若使用强类型编程语言,无效输入会导致运行错误,因此不考虑无效等价类。等价类划分的若干原则:

在规定了输入数据的取值范围下,可以确定一个有效等价类和两个无效等价类。

在规定了输入条件必须如何的情况下,可以确定一个有效等价类和一个无效等价类。

在输入数据是一个布尔量的情况下,可以确定一个有效等价类和一个无效等价类。

在规定了输入数据由n个值构成,并要求对其中的每个值进行测试,可以确定n个有效等价类和一个无效等价类。

在规定了输入数据必须遵守的规则的情况下,可以确定一个有效等价类和若干无效等价类

在已划分的某等价类中,若各元素在程序中的处理方式不同,则应将次等价类进一步划分为若干等价类

划分等价类的过程是一个对软件的需求规格说明进行分析推敲的过程,有时还需求多次的尝试方能成功

针对被测程序划分出若干有效等价类和无效等价类之后,应建立等价类表,列出与每一个输入条件对应的有效等价类和无效等价类

根据等价类表编写测试用例,可遵循如下步骤:

为每一个等价类规定一个唯一的编号

设计一个测试用例,使其尽可能多地覆盖未被盖章地有效等价类,如此重复,直到所有有效等价类均被测试用例覆盖

设计一个测试用例,使其覆盖一个尚未被覆盖的无效等价类如此重复,直到所有无效等价类均被测试用例覆盖

边界值分析法

边界值分析法是一种对等价类划分法的补充,使用边界值分析法时,应针对等于,刚好大于,刚好小于等各输入等价类和输出等价类边界值的情况设计测试用例

用边界值分析法设计策划i用例应该遵循以下原则:

若输入条件规定了值的范围,应针对刚达到此范围边界的值,以及刚超越此范围边界的值设计测试用例

若输入条件规定了值的个数,应针对最大个数,最小个数,比最大个数打1,比最小个数少1等集中情况的数据设计测试用例

若程序的规格说明中给出的输入域和输出域时有序集合,应针对集合中的第一个元素(即刚好大于或刚好小于第一元素的数值)和最后一个元素(刚好大于或刚好小于最有一个元素的数值)设计测试用例

若程序中使用了内部数据结构,应针对该内部数据结构边界上的值设计测试用例

进一步分析规格说明,找出其他可能的边界情况,针对他们设计测试用例

在实际项目的测试过程中运用以上原则不能生搬硬套,最重要在分析具体规格说明基础上寻找边界情况,设计测试用例

因果图分析法

在等价类方法和边界值分析法中,对输入条件的考虑并未重视输入条件的组合,事实上,当输入存在若干种可能的组合时,必须对这些组合加以考虑,以证实测试程序输入组合在某种情况下能否完成规格说明书中预先规定的功能

因果图时一种形式语言,用自然语言描述的规格说明可以转换为因果图,因果图实质上时一种数据逻辑电路,但是没有使用标准的电子学符号,而是使用了简化的符号。因果图时辅助测试者明确测试对象,确定测试依据的有效手段。(因果图的画法百度)

因果图设计用例地时候遵循以下步骤:

分析程序的规格说明中哪些时原因,哪些是结果,所谓原因,是指输入条件或输出条件的等价类,而结果是指输出条件。给每个原因和结果赋一个标识符

分析程序的规格说明中的含义,确定原因与原因,原因与结果之间的关系,画出因果图

由于语法或者环境的限制,一些原因与原因之间,原因与结果之间的组合不能出现,对这些特殊情况,在因果图中用一些记号约束或限制条件

将因果图转化成判定表,根据判定表的每一列实际测试用例

随机测试方法

随机测试方法是测试输入数据在可能的输入之中随机选取的,测试人员只需要规定输入变量的取值区间,在需要时提供必须的变换机制,使产生的随机数服从预期的概率分布。

猜错法

猜错法使有经验的测试人员,通过列出可能有的错误和易错情况表,对每种情况都要进行测试用例的设计。

黑盒测试方法的综合使用策略

在使用黑盒测试方法时,只有结合被测试软件的特点,有选择的使用若干方法,才能真正满足软件测试的需求

首先进行等价类划分,包括输入和输出条件的等价类划分,将无线测试变成有限测试这是减少工作量和提高测试效率最有效的方法,等价类划分也常是边界值分析的基础

在任何情况下都必须使用边界值分析,测试人员可以根据经验用猜错法来补充一部分的测试用例

如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选择因果图法。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值