
实验介绍 ●●● ●● 6.2实验二白盒测试技术 ●00 实验目的: 通过一个C语言小例子stulink.cpp(源代码 见附录B)详细讲解如何用白盒测试工具 safeproc/c++来进行白盒测试。 信息系统测试
实验介绍 信息系统测试 6.2 实验二 白盒测试技术 实验目的: 通过一个C语言小例子stulink.cpp(源代码 见附录B)详细讲解如何用白盒测试工具 safeproc/c++来进行白盒测试

实验介绍 ●●● 实验内容: ·对程序进行静态分析,分析程序结构。 ·对函数进行插装。 ·对程序进行动态测试,得出分支覆盖率 和语句覆盖率,以及其它结果。 信息系统测试
实验介绍 信息系统测试 实验内容: • 对程序进行静态分析,分析程序结构。 • 对函数进行插装。 • 对程序进行动态测试,得出分支覆盖率 和语句覆盖率,以及其它结果

实验介绍 6.2.1 Safepro/C++简介 ●●● ·Safepro/C++是一个白盒测试工具,可以 帮助分析和测试程序,使您更快捷有效 地理解程序的结构,及早地发现程序中 暗藏的错误,提高程序的质量。 ·Safepro/C++也是一个C/C++软件的分析 与测试支持工具,也可以说是一个 C/C++软件的质量保证工具,同时也是 一个C/C++软件理解工具。 信息系统测试
实验介绍 信息系统测试 6.2.1 Safepro/C++简介 • Safepro/C++是一个白盒测试工具,可以 帮助分析和测试程序,使您更快捷有效 地理解程序的结构,及早地发现程序中 暗藏的错误,提高程序的质量。 • Safepro/C++也是一个C/C++软件的分析 与测试支持工具,也可以说是一个 C/C++软件的质量保证工具,同时也是 一个C/C++软件理解工具

实验介绍 ●●● ●● Safepro/C++功能 ●● ● 1.静态分析功能: (1)程序结构分析; (2)程序数据流分析: (3)McCabe复杂度和Halstead复杂度度量; (4)类之间关系的可视化显示。 信息系统测试
实验介绍 信息系统测试 Safepro/C++功能 1.静态分析功能: (1)程序结构分析; (2)程序数据流分析; (3)McCabe复杂度和Halstead复杂度度量; (4)类之间关系的可视化显示

实验介绍 ●●● 静态分析流程 *.cpp+ 分析结果 *.0bj (程序类结构信息) *.1ib 编译器类型选择 Safepro/.C+环境 (程序结构信息) 静态分析 程序复杂度信息) 组装测试项目 (调用和被调用) 头文件、库文件 (静态数据流跟踪) 路径设置等。 (中断还数列表) 信息系统测试
实验介绍 信息系统测试 静态分析流程

实验介绍 888 ●●●● Safepro/C++功能 88 2.动态测试功能: (1)语句、分支覆盖率测试: (2)分支执行频度分析: (3)中断的跟踪; (4)断言的设定和跟踪; (5)测试结果可视化显示。 信息系统测试
实验介绍 信息系统测试 Safepro/C++功能 2.动态测试功能: (1)语句、分支覆盖率测试; (2)分支执行频度分析; (3)中断的跟踪; (4)断言的设定和跟踪; (5)测试结果可视化显示

实验介绍 动态测试流程 *.cpp+ 静态分折结果: Safepro/ *.obj 程序结构信息 C++环境 *16 静态分析。 复杂度信息 编译器类型选择 组成测 试项目 设置待插桩 头文件、库文件 函数 动态分折结果 动态执行信息 变量跟踪结果 设置变量 断言跟踪结果 及断言信息 中断安装跟踪 中断端口使用 动态测试 (插桩>链接 >运行 信息系统测试
实验介绍 信息系统测试 动态测试流程

实验介绍 ●●● ●●9 6.2.2被测程序说明 ●● stulink.cpp是一个链表应用的简单例子,包括 1个主函数和5个子函数。 ·Main函数:主函数。 ·Creatlink函数:创建一个含n个节点的链表。 ·Deletelink函数:删除链表中值为num的节点。 Insertlink函数:在链表中插入一个节点。 ·Printlink函数:打印链表中各节点信息。 ·Destroylink函数:销毁链表,释放动态分配的内存。 信息系统测试
实验介绍 信息系统测试 6.2.2被测程序说明 stulink.cpp是一个链表应用的简单例子,包括 1个主函数和5个子函数。 • Main函数:主函数。 • Creatlink函数:创建一个含 n 个节点的链表。 • Deletelink函数:删除链表中值为 num 的节点。 • Insertlink函数:在链表中插入一个节点。 • Printlink函数:打印链表中各节点信息。 • Destroylink函数:销毁链表, 释放动态分配的内存

实验介绍 6.2.3白盒测试准备 在开始测试之前,被测程序必须通过 VC+编译器编译、链接。 ·创建一个Win32 Console Application项 目:米.PRJ ·编译、链接被测程序 ·导出Makefile文件:*.MAK 信息系统测试
实验介绍 信息系统测试 6.2.3白盒测试准备 在开始测试之前,被测程序必须通过 VC++编译器编译、链接。 • 创建一个Win32 Console Application项 目:*.PRJ • 编译、链接被测程序 • 导出Makefile文件:*.MAK

实验介绍 ●●● ●●● 6.2.3白盒测试准备 ●●0 ●● Safepro C/C+的测试准备: (1)创建测试项目; (2)导入Makefile文件; (3)配置测试环境。 信息系统测试
实验介绍 信息系统测试 6.2.3白盒测试准备 Safepro C/C++的测试准备: (1)创建测试项目; (2)导入Makefile文件; (3)配置测试环境