- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CTest测试工具指导书
密级:内部使用
版本:1.0
C++Test测试工具指导书
2005年7月09日
文档编号:
目录
文档说明 2
变更记录 3
目录 4
前言 5
序言 5
相关文档 6
一.C++Test概述 6
二.安装说明 7
三.界面说明 9
1. 菜单栏: 9
File菜单 9
Edit菜单 10
Project 菜单 11
Test 菜单 14
Coverage菜单 14
Setting菜单 14
Tool菜单 15
Help菜单 15
2. 工具栏 15
3. Project Tree 区 16
4. Main GUI Panel区 17
5. Output / Message Panel区 17
6. Test tab 18
Source Code Tab 18
Static Analysis Tab 20
Dyanmic Analysis Tab 22
Test Progress Tab 26
Statistics Tab 27
四.操作(demo) 27
建立测试环境 27
静态测试 29
动态测试 30
生成报表 31
五.应用举例 32
六、高级使用技巧 37
1.静态规则配置库导入/导出功能 37
2.工程模板 (project’s template) 38
3.定制测试用例 40
4.对象库 40
5.自动测试尽可能多的分支和边界条件 41
【例】发现条件中的整型边界条件 41
【例】发现条件中的字符型边界条件 42
【例】使用枚举类型生成测试用例的输入值 42
【例】使用特殊字符 43
6.处理复杂数据类型 44
【例】用类、枚举和自定义类型做输入/输出 44
【例】用结构、枚举和指针类型做输入/输出 46
7.处理复杂嵌套类型 48
【例】应用多层嵌套类 48
8.自定义桩时返回复杂数据类型 50
【例】桩返回类型为结构指针 51
9.初始化对象 52
【例】使用用户定义构造函数初始化对象 52
10.自动测试用户定义构造函数和重载函数 54
11.测试C++模板(template)应用 55
【例】自动测试模板应用 55
12.自动捕获代码异常 57
创建测试单元(Test Unit) 58
13.函数序列测试 58
14.观察测试覆盖性 59
七、常见问题解答 61
问题1: 测试用例显示的测试结果不明确的,怎样定位到源码行?C++Test怎样Debug 所选测试用例问题? 61
问题2: 找不到头文件错误怎么处理? 61
问题3: Source Code属性页中的源文件不能显示汉字注释怎么办? 62
问题4: Project Settings compiler options 的Preprocessor flags 做什么用? 62
问题5: 如果函数要求的输入参数是 int类型,C++Test能否提供输入float类型 或者char类型的异常参数? 62
八、建议 63
工程创建及配置建议 63
创建测试单元建议 63
其他建议 63
九、小结 64
一.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完全自动执行所有的白盒测试过程,自动生成和执行精心设计的测试用例。自动标
文档评论(0)