密 级 : 内 部 使
密 级 : 内 部 使
用
用
版本:
版本:
1
1
.0
.0
C++Test
C++Test
测试工具指导书
测试工具指导书
2005 年 7 月 09 日
文档编号:
C++Test 测试工具指导书
目录
目录.....................................................................................................................................................2
一.C++Test 概述..............................................................................................................................4
二.安装说明.....................................................................................................................................5
三.界面说明.....................................................................................................................................6
1. 菜单栏:.................................................................................................................................7
File 菜单.............................................................................................................................7
Edit 菜单.............................................................................................................................8
Project 菜单........................................................................................................................9
Test 菜单..........................................................................................................................12
Coverage 菜单..................................................................................................................12
Setting 菜单......................................................................................................................12
Tool 菜单..........................................................................................................................13
Help 菜单.........................................................................................................................13
2. 工具栏...................................................................................................................................13
3. Project Tree 区.......................................................................................................................14
4. Main GUI Panel 区................................................................................................................15
5. Output / Message Panel 区....................................................................................................15
6. Test tab...................................................................................................................................16
Source Code Tab...............................................................................................................16
Static Analysis Tab............................................................................................................18
Dyanmic Analysis Tab.......................................................................................................20
Test Progress Tab...............................................................................................................24
Statistics Tab......................................................................................................................25
四.操作(demo)...............................................................................................................................25
建立测试环境...........................................................................................................................25
静态测试...................................................................................................................................27
动态测试...................................................................................................................................28
生成报表...................................................................................................................................29
五.应用举例...................................................................................................................................30
六、高级使用技巧...........................................................................................................................35
1.静态规则配置库导入/导出功能........................................................................................35
2.工程模板 (project’s template)............................................................................................36
3.定制测试用例.....................................................................................................................38
4.对象库.................................................................................................................................38
5.自动测试尽可能多的分支和边界条件.............................................................................39
【例】发现条件中的整型边界条件...............................................................................39
【例】发现条件中的字符型边界条件...........................................................................40
- 2 -
C++Test 测试工具指导书
【例】使用枚举类型生成测试用例的输入值..............................................................40
【例】使用特殊字符.......................................................................................................41
6.处理复杂数据类型.............................................................................................................42
【例】用类、枚举和自定义类型做输入/输出.............................................................42
【例】用结构、枚举和指针类型做输入/输出.............................................................44
7.处理复杂嵌套类型.............................................................................................................46
【例】应用多层嵌套类...................................................................................................46
8.自定义桩时返回复杂数据类型.........................................................................................49
【例】桩返回类型为结构指针.......................................................................................49
9.初始化对象.........................................................................................................................50
【例】使用用户定义构造函数初始化对象..................................................................50
10.自动测试用户定义构造函数和重载函数.......................................................................52
11.测试 C++模板(template)应用.....................................................................................53
【例】自动测试模板应用...............................................................................................54
12.自动捕获代码异常...........................................................................................................55
创建测试单元(Test Unit).........................................................................................................56
13.函数序列测试...................................................................................................................56
14.观察测试覆盖性...............................................................................................................57
七、常见问题解答...........................................................................................................................58
问题 1: 测试用例显示的测试结果不明确的,怎样定位到源码行?C++Test 怎样 Debug
所选测试用例问题?...............................................................................................................58
问题 2: 找不到头文件错误怎么处理?..................................................................................58
问题 3: Source Code 属性页中的源文件不能显示汉字注释怎么办?................................59
问题 4: Project Settings > compiler options 的 Preprocessor flags 做什么用?....................59
问题 5: 如果函数要求的输入参数是 int 类型,C++Test 能否提供输入 float 类型 或者
char 类型的异常参数?...........................................................................................................59
八、建议...........................................................................................................................................60
工程创建及配置建议...............................................................................................................60
创建测试单元建议...................................................................................................................60
其他建议...................................................................................................................................61
九、小结...........................................................................................................................................61
- 3 -
C++Test 测试工具指导书
一.C++Test 概述
C++Test 是一个 C/C++单元测试工具,自动测试任何 C/C++类、函数或部件,而不需
要您编写一个测试用例、测试驱动程序或桩调用。C++Test 能够自动测试代码构造(白盒
测试)、测试代码的功能性(黑盒测试)和维护代码的完整性(回归测试)。 C++Test 是
一个易于使用的产品,能够适应任何开发生命周期。通过将 C++Test 集成到开发过程中,
您能够有效地防止软件错误,提高代码的稳定性,并自动化单元测试技术(这是极端编程
过程的基础)。
·支持平台
Windows2000,WindowsNT,Linux
·支持编译器
VC 6.0 GNU,VC7.0 GNU(Windows2000/NT)
GCC(Linux)
功能描述:
·静态测试
C++Test 内嵌了业界最出名的 Effective C++(epcc)、More Effective C++(mepcc)、meyer-
klaus(mk)以及 Universal Code Standard(ucs)规范。同时,它也集成了由 parasoft 累积出来的
一些规范。静态测试中,C++Test 会对代码进行详尽的扫描,验证代码中是否存在和这些
规范相冲突的地方,尽快的发现一些简单或低级错误,避免由它们带来的集成扩散。
·动态测试(白盒测试)
C++Test 提供了一种有效并且高效的方法执行白盒测试。C++Test 完全自动执行所有的
白盒测试过程,自动生成和执行精心设计的测试用例。自动标记任何运行失败,并以一种
简单的图示化结构显示。然后自动保存这些测试用例,能够方便地用于以后的回归测试。
由于 C++Test 能够自动生成桩函数,或允许你加入自己的桩函数,因此它能够测试引
用外部对象的类。换句话说,C++Test 能够运行任何一个或一组类,并自动生成和执行一
组测试用例,它们被设计成能够发现尽可能多的错误。
C++Test 允许你定制白盒测试用例的生成,和在什么层次上(项目、文件、类或方
法)执行测试。
·动态测试(黑盒测试)
C++Test 通过自动化黑盒测试的大部分操作,减轻了这类测试的负担。
你可以简单地输入测试用例输入,然后让 C++Test 运行测试用例并自动确定实际的输
出结果。如果结果正确,不需要其它动作。如果结果不正确,你可以输入预期的输出结果。
这样比手工输入每个测试用例的结果更快更容易。
C++Test 自动设计了一组广谱的白盒测试用例。当使用这些测试用例在黑盒测试时,
你只需简单地观察实际的输出结果,然后对任何不正确的结果输入预期的值。当你需要输
入或修改测试用例时,你可以在 C++Test 自动生成的测试用例框架种简单地键入相应的值。
这将显著地加快建立测试用例的过程。
·回归测试
C++Test 完全自动化与回归测试有关的所有步骤。C++Test 首次测试某个类时,自动保
存其测试和测试参数。当需要执行回归测试时,你可以打开合适的项目和文件,运行所有
原来的白盒和黑盒测试用例;C++Test 会自动运行完全相同的测试用例和测试参数,并告
之发现的任何问题。这意味着你能够立即知道修改是否引入了任何错误。
- 4 -
C++Test 测试工具指导书
二.安装说明
注意:
在安装 C++Test 之前,一定要先安装好 Microsoft Visual C++ (6.0 或 .NET)。并且
关闭 Microsoft Visual C++。
安装源程序:C++Test-21_jre.exe
具体操作主要分三步走:
第一步:打开安装源程序,同普通的 windows 应用程序一样,选择安装路径,
完成安装。
第二步:从桌面或者菜单打开 C++Test,将弹出类似于下面的一个窗口:
这 里 的 machine ID 就 是 C++Test 和 主机 绑定 的 信 息。 这 个 machine ID 需 交 给
parasoft,来申请 license。而由于 license 的种类不同,可以分为 local license(单机
版)和 net license(网络版)。
第三步:将相应的 license 和 expire date 粘贴到相应的位置,如果信息正确,
系统将提示 license ok。如果信息不正确,系统将提示 wrong license。输入正确的
license,打开 C++Test,就可以进入 C++Test 的用户界面了。
C++Test 安装完毕后,自动和 Microsoft Visual C++集成,在 Microsoft Visual C+
+工具栏上显示如下按钮:
- 5 -
评论3
最新资源