. . .
★ 检查子程序、宏、函数:验证每次调用与所调用位置是否正确,调用的子程序、宏、函数是否存在,参数是否一致。 ★ 检查全部等价变量的类型的一致性。 ★ 确认常量的取值和数制、数据类型。
★ 选择、激活路径:在设计控制流图中选择某条路径,到实际的程序中激活这条路径,如果不能激活,则程序可能有错。
★ 对照程序的规格说明,详细阅读源代码,比较实际的代码,从差异中发现程序的问题和错误。
2.代码检查方式 桌面检查 对源程序代码进行分析、检验,根据相关的文档,检验程序中是否有错误的过程。 3. 静态结构分析
★ 可以检查函数的调用关系是否正确; ★ 是否存在孤立的函数而没有被调用; ★ 编码的规范性; ★ 资源是否释放;
★ 数据结构是否完整和正确; ★ 是否有死代码和死循环;
★ 代码本身是否存在明显的效率和性能问题;
★ 代码本身方法,类和函数的划分是否清晰,易理解; ★ 代码本身是否健壮,是否有完善的异常处理和错误处理。
三.测试执行和结果
3.1白盒测试
(1)选择测试平台:VC(原因、优缺点)
原因:VC是我熟悉的C/C++环境,学习C和C++语言都是用的VC,因此这个环境我并不陌生,测试起来相对压力较小,并且它本身对C/C++有很好的兼容性。 VC6优点:
a,内容少,学习成本低。 b,常用功能操作简单。 c,占用资源少。有个笑话是:启动VC6后写了20行代码,对方的VS201X还在启动中。
d,Win2000和以后的操作系统自带mfc.dll。
VC6缺点:
a,对stl支持不友好,VC6是98年,stl成为标准是99年。 b,Watch窗口,看到字符串太短。VC7也有这个问题,但能看到的长得多。 c,VC6不可以附加。比如先启动AutoCAD,再启动VC7调试。 d,调试时,无法改变常量的值。
e,调试时,无法看到静态变量的值。
..........
. . .
缺点: 由于C++是由C语言发展起来的,也支持C语言的编译。6.0版本是使用最多的版本,很经典。最大的缺点是对于模版的支持比较差。现在最新补丁为SP6,推荐安装,否则易出现编译时假死状态。仅支持Windows操作系统。目前发现与windows 7兼容性不好,安装成功后可能会出现无法打开cpp文件的现象。
实验目的:
能熟练应用白盒测试技术设计测试用例
白盒测试原理:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。它是把测试对象看作装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。其又称为结构测试。
对于该实验的例子给出其流程图如下图所示,我们来了解白盒测试的基本技术和方法。
1) 语句覆盖 测试用例输入 x=1,y=1 x=1,y=-1
2) 判定覆盖
..........
输出magic 12 0 判定M的取值 T F 判定N的取值 F T 覆盖路径 abef acdf . . .
测试用例输入 x=1,y=1 x=1,y=-1
输出magic 12 0 判定M的取值 T F 判定N的取值 F T 覆盖路径 abef acdf
1) 语句覆盖
x=1,y=1
x=1,y=-1
..........
. . .
2) 判定覆盖
x=1,y=1
x=1,y=-1
..........