[计算机软件及应用]白盒测试及其用例的设计
第4章 白盒测试及其用例的设计;本章教学目标;;4.1 白盒测试方法;白盒测试法检查程序内部逻辑结构,对所有逻辑路径进行测试,是一种穷举路径的测试方法。
即使每条路径都测试过了,仍然可能存在错误:
穷举路径测试无法检查出程序本身是否违反了设计规范,即程序是否是一个错误的程序。
穷举路径测试不可能查出程序因为遗漏路径而出错。
穷举路径测试发现不了一些与数据相关的错误。;采用白盒测试方法必须遵循以下几条原则:
保证一个模块中的所有独立路径至少被测试一次。
所有逻辑值均需测试真 (true) 和假 (false) 两种情况。
检查程序的内部数据结构,保证其结构的有效性。
在上下边界及可操作范围内运行所有循环。;;4.2 程序结构分析;4.2.1 控制流图;常见结构的控制流图;图4-1 控制流图;;4.2.2 环形复杂度;计算环形复杂度的方法; 导出独立路径集:
路径1:5-15 (iRecordNum=0)
路径2:5-7-8-14-5-15
(iRecordNum≥0,iType=0)
路径3:5-7-9-11-14-5-15
(iRecordNum≥0,iType=1)
路径4:5-7-9-13-14-5-15
(iRecordNum≥0,iType≠0,iType≠1)
;4.2.3 图矩阵;;习题;4.3 覆盖测试;4.3.1 测试覆盖率;逻辑覆盖是以程序内部的逻辑结构为基础的设计测试用例的技术。它属白盒测试。
根据覆盖目标的不同,可分为:;;;;;;;逻辑覆盖法(续);int DoWork (int x,int y,int z)
{
int k=0,j=0;
if ( (x3)(z10) )
{ k=x*y-1;
j=sqrt(k);
} //语句块1
if ( (x==4)||(y5) )
{ j=x*y+10; } //语句块2
j=j%3; //语句块3
return j;
};X3 z10;L1(a b d)
= {x3 and z10} and {x=4 or y5}
= {x3 and z10 and x=4} or
{x3 and z10 and y5}
= {x=4 and z10} or
{x3 and z10 and y5};L2(a c d)
= {x3 and z10} and {x=4 or y5}
= {x3 or z10 and x=4} or
{x3 and z10 and y5}
= {x=4 and z≥10} or
{z ≥ 10 and y5} or
{x≤3 and y5};L3(a b e)
= {x3 and z10} and {x=4 or y5}
= {x3 and z10} and {x=4 and y5}
= {x3 and z10 and x≠4 and y≤5};L4(a c e)
= {x3 and z10} and {x=4 or y5}
= {x3 or z10} and {x=4 and y5}
= {x≤3 and x≠4 and y≤5} or
{z≥10 and x≠4 and y≤5};语句覆盖;判定覆盖;判定覆盖;判定覆盖(续);条件覆盖;;;分析:
这组测试用例,则虽然满足了条件覆盖,但只是覆盖了程序中第一个判定的取假分支c 和第二个判定的取真分支d,不满足判定覆盖的要求。 ;判定/条件覆盖;判定/条件覆盖(续);组合覆盖;根据组合覆盖的基本思想,设计测试用例如下:;路径覆盖;分析:虽然前面一组测试用例满足了路径覆盖,但并没有覆盖程序中所有的条件组合(丢失了组合3和7),即满足路径覆盖的测试用例并不一定满足组合覆盖。
说明:
对于比较简单的小程序,实现路径覆盖是可能做到的。但如果程序中出现较多判断和较多循环,可能的路径数目将会急剧增长,要在测试中覆盖所有的路径是无法实现的。为了解决这个难题,只有把覆盖路径数量压缩到一定的限度内,如程序中的循环体只执行一次。
在实际测试中,即使对于路径数很有限的程序已经做到路径覆盖,仍然不能保证被测试程序的正确性,还需要采用其他测试方法进行补充。;最少测试用例数计算;用N-S图表示程序的3种基本控制结构:; 显然,要测试这
您可能关注的文档
- [计算机软件及应用]数据表示及数据运算.ppt
- [计算机软件及应用]文件系统Minifilter驱动文档翻译.doc
- [计算机软件及应用]文件系统.ppt
- [计算机软件及应用]斯坦福_数据库系统实现_Notes10.ppt
- [计算机软件及应用]新word.ppt
- [计算机软件及应用]斯坦福大学机器学习课程讲义第一讲——机器学习介绍.ppt
- [计算机软件及应用]文科__经管类__微积分_第四章__常微分方程__PPT1.ppt
- [计算机软件及应用]新标准中文版Office基础培训教程-17.ppt
- [计算机软件及应用]新标准中文版Office基础培训教程-18.ppt
- [计算机软件及应用]新程序文件.doc
原创力文档

文档评论(0)