白盒测试和黑盒测试


1、白盒测试

(1)白盒测试的概念:“白盒”测试又称为结构测试或逻辑驱动测试是一种按照程序内部逻辑结构和编码结构设计测试数据并完成测试的一种测试方法。

(2)白盒测试的特点:

可以构成测试数据使特定程序部分得到测试

有一定的充分性度量手段

可获得较多工具支持

通常只用于单元测试

(3)白盒测试的基本测试内容:

对程序模块的所有独立执行路径至少测试一次

对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次

在循环的边界和运行的边界限内执行循环体

测试内部数据结构的有效性

(4)逻辑覆盖的种类:

语句覆盖:

语句覆盖是最起码的测试要求,使得每一条语句至少被执行一次

对程序的逻辑覆盖很少,只关心判定表达式的值,是很弱的逻辑覆盖标准。

判定覆盖:

要求设计足够的测试用例,使得程序中的每一个分支至少通过一次

即每一条分支语句的“真”值和“假”值都至少执行一次。

条件覆盖:

不仅每一个语句至少执行一次,使得判定中的每个条件获得各种可能的结果。

判定覆盖只关心整个判定表达式的结果,条件覆盖关心的则是每个条件各种取值的结果。

判定/条件覆盖:

设计足够多的测试用例,使得判定中每个条件的所有可能取值至少能够获取一次,同时每个判断的所有可能的判定结果至少执行一次。

条件组合:

要求设计足够多的测试用例,使得每个判定中条件的各种组合至少出现一次。

满足条件组合覆盖标准的测试用例,也一定满足判定覆盖、条件覆盖和判定/条件覆盖标准。

路径覆盖:要求设计足够多的测试用例,使得程序中所有的路径都至少执行一次 。

(5)基本路径测试步骤:

1) 根据过程设计结果画出相应的流图

2) 计算控制流图的圈复杂度

3) 确定线性独立路径的基本集合

4) 设计可强制执行基本集合中每条路径的测试用例

2、黑盒测试

(1)什么是黑盒测试:黑盒测试又称功能测试或数据驱动测试

把测试对象当作看不见内部的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性.

站在使用软件或程序的角度,从输入数据与输出数据的对应关系进行的测试

在软件的接口处进行测试

通过导出执行程序所有功能需求的输入条件集,实现功能覆盖,需求覆盖

(2)黑盒测试所用到的方法:因果图法、等价类划分法、边界值分析法、随机数法、猜错法。

A 什么是等价类划分:

等价类,把所有可能的输入数据,即程序的输入域划分成若干部分,

划分,从每一部分中选取少数有代表性的数据做为测试用例,代表性数据等同于该类中的其他值

有效等价类:对于程序规格说明来说,是合理的,有意义的输入数据构成的集合

无效等价类:对于程序规格说明来说,是不合理的,无意义的输入数据构成的集合

等价类划分的方法,例如:按区间划分,按数值划分,按数值集合划分,按限制条件或规划划分,按处理方式划分

B 边界值分析:选取正好等于,刚刚大于,或刚刚小于边界的值做为测试数据的方法

边界值分析原则:

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

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

3)根据规格说明的每个输出条件,使用原则 1)。

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

5)分析规格说明,找出其他可能的边界条件。

C 因果图:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,该方法充分考虑了输入情况的各种组合及输入条件之间的相互制约关系。

用因果图生成测试用例的基本步骤:

 1)分析软件规格说明描述:原因、结果、标识符

 2)分析软件规格说明描述中的语义:找出逻辑关系

 3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,添加必要的约束条件

 4)把因果图转换成判定表

 5)把判定表的每一列拿出来作为依据,设计测试用例




智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告