Parasoft C++test
用户手册
版本 9.2
Parasoft Corporation
101 E. Huntington Drive, 2nd Floor
Monrovia, CA 91016
电话: (888) 305-0041
传真: (626) 305-9048
电子邮件: info@parasoft.com
URL: www.parasoft.com
PARASOFT 最终用户许可协议
本协议包括三部分。第 I 部分适用于您未购买相关软件 (the "SOFTWARE" (软件))许可证的情形。
第 II 部分适用于您已购买 SOFTWARE (软件)许可证的情形。第 III 部分适用于所有的许可证授予情
形。如果您最初获取了 SOFTWARE (软件)的副本却没有购买许可证、而现在想要购买许可证,则请
按以下方式联系 Parasoft Corporation( "PARASOFT"):
(626) 256-3680
(888) 305-0041 (仅适用于美国)
(626) 256-9048 (传真)
info@parasoft.com
http://www.parasoft.com
第 I 部分 - 未 (尚未)支付许可证费用情况下适用的条款。
免责条款。
免费的 SOFTWARE (软件)以 "AS-IS (按原样提供) " 的方式提供,不作任何形式的保证,包括 ( 但
不限于 ) 适销性和适用于某特定用途的隐含性保证、以及任何非侵权保证。如果 SOFTWARE (软件)
在质量和性能上出现问题,则所有风险由您本人承担。如果 SOFTWARE (软件)被证明有缺陷,则全
部的服务和修理费用应当由您 (而非 PARASOFT )来承担。此免责条款构成本协议的必不可少的部
分。某些国家或地区不允许免除隐含性保证,因此上述免责条款可能对您并不适用,您可能拥有其它合
法权力,这根据您所在国家或地区而定。
第 II 部分 - 已支付许可证费用情况下适用的条款。
许可证授予。
PARASOFT 据此授予您、同时您也接受,一份封装的电子媒介、用户手册以及任何相关材料 (在本协
议中总称为 "SOFTWARE (软件) ")的有限责任许可。您只可以将 SOFTWARE (软件)安装在单个
磁盘上的某一位置,或将其临时或永久地安装在其它磁盘上的某一位置,供单个用户使用。如果要将
SOFTWARE (软件)安装于多个位置,则必须另外从 PARASOFT 获取 SOFTWARE (软件)副本的
许可证。如果要让多名用户访问软件,就必须从 PARASOFT 获取 SOFTWARE (软件)副本的许可
证,或者从 PARASOFT 申请一份多用户许可证。根据本协议,在未经 PARASOFT 书面同意的情况
下,切勿临时或永久性地转移或转让本软件的使用权或分级许可权。
有限责任担保。
PARASOFT 保证,在正常使用的情况下,自购买之日起三十 (30)天内电子媒介的材料不会出现缺
陷。如果在三十 (30)天内软件介质出现缺陷,您可以将它们返还给 PARASOFT 进行免费更换。
这是一份有限责任担保,且是 PARASOFT 提供的唯一保证。 PARASOFT 不做任何明确保证,也不做
任何不侵犯第三方权利的保证。隐含性保证的期限,包括 ( 但不限于 ) 适销性和适用于某特定用途的保
证,仅限于上述有限保证期;某些国家或地区不允许免除隐含性保证,因此上述免责条款可能对您并不
适用。 PARASOFT 未授权任何 PARASOFT 经销商、代理或雇员对该项保证进行修改、扩展或添加。
如果您在保证期内对 SOFTWARE (软件)进行了任何改动;如果媒介遭受事故、被滥用或不恰当的使
用;亦或是您违反了本协议的条款,那么此项保证将立即终止。如果基于硬件或软件使用、或与硬件和
软件配合使用的 SOFTWARE (软件),与文档中所描述的 SOFTWARE (软件)设计用途的这些硬件
和软件的未经修改版本不同,那么此项保证将不适用。此项保证赋予您特定的合法权利,您可能还拥有
其它合法权利,这根据您所在国家或地区而定。
您的原始电子媒介 / 归档副本。
封装的电子媒介,包含一个原始的 PARASOFT 选项卡。用原始的电子媒介来制作 " 备份 " 或 " 归档 "
副本,以便运行 SOFTWARE (软件)程序。除了创建归档的副本以外,不应在您的终端中使用该原始
的电子媒介。在记录归档副本之后,将该原始的电子媒介放到安全的地方。除这些归档副本以外,您同
意不制作 SOFTWARE (软件)的任何其它副本。
期限。
本协议自您安装 SOFTWARE (软件)之日起生效,一直持续到您将原始的 SOFTWARE (软件)返
还到 PARASOFT 时为止;返还软件时,您还必须以书面形式保证已销毁了记录在任何内存系统或磁媒
介、电子媒介或光学媒介上的所有归档副本、以及类似书面材料的所有副本。
客户注册。
PARASOFT 可以随时对 SOFTWARE (软件)进行修订或更新。这些修订版的获得,通常由
PARASOFT 自行决定。修订或修订通知,只能提供给已向 PARASOFT 代表注册、或已经在 Parasoft
Web 站点上注册的用户。只有注册用户才能享受 PARASOFT 的客户服务。
第 III 部分 - 适用于所有许可证授予的条款
授予范围。
衍生产品。
通过使用 SOFTWARE (软件)而开发的产品,所有权属于您。对上述产品,无需版权费或运行时许可
证。
PARASOFT 的权力。
您承认 SOFTWARE (软件)是 PARASOFT 所独家拥有的财产。在接受此协议后,您并不会成为
SOFTWARE (软件)的所有者,但依据本协议,您享有使用 SOFTWARE (软件)的权利。您同意尽
自己最大的努力,采取一切合理的措施,以防 SOFTWARE (软件)在未经本协议授权情况下被使用、
复制或销售。您同意不对 SOFTWARE (软件)进行分解、反编译或其它方式的逆向设计。
适用性。
PARASOFT 已尽力使之成为一款优质的产品,不过 PARASOFT 并不保证 SOFTWARE (软件)的适
用性、精确性或运行特征。本软件以 "as-is (按原样提供) " 的方式进行销售。
不受保项目。
对于非当前发行版的 SOFTWARE (软件), PARASOFT 没有支持的义务。
协议终止。
如果违反本协议的任何条款和条件,则本协议将自动终止。一旦终止,您必须将软件返还给
PARASOFT,或者销毁 SOFTWARE (软件)和文档的所有副本。在此情况下,您还必须书面保证未
保留 SOFTWARE (软件)的任何副本。
责任限制。
您同意,对于给您或任何其它方所造成的任何损失, PARASOFT 所承担的责任不超过您为
SOFTWARE (软件)所支付的许可费用。
对由于违反了保证条款使用 SOFTWARE (软件)而造成的直接的、间接的、附带的或衍生性的损坏,
即使已经告知 PARASOFT 存在此类损坏,PARASOFT 也不承担责任。本软件以 "as-is (按原样提供)
" 的方式进行销售。
一些国家不允许免除或限制附带的或衍生性的损害赔偿责任,因此上述的责任限制或不受保项目可能对
您并不适用。但您可能还拥有其它权利,这根据您所在国家或地区而定。
完整协议。
本协议代表与本许可证相关的完整协议,只能由双方共同以书面的方式修订。您所下达的任何采购定单
一旦被接受,就明确表示您同意本协议中、而非采购定单中的条款。如果本协议的任一项条款属于无法
实施,则应当对这样的条款作必要的修改,使其可以实施。本协议受加利福尼亚法律的管辖 (除了与
法律规定冲突的内容以外)。
所有品牌和产品名称都是其各自所有者的商标或注册商标。
版权所有, 1993-2011
Parasoft Corporation
101 E. Huntington Drive., 2nd Floor
Monrovia, CA 91016
美国出版, 2011 年 10 月 24 日
目录
Parasoft C++test 9.2
C++test 基础
简介............................................................................................................................................... 12
关于文档库 - PDF 和相关资源 .................................................................................................... 15
联系 Parasoft 的技术支持 ............................................................................................................. 16
安装和许可
受支持的环境 ................................................................................................................................ 19
Windows 单机安装 ........................................................................................................................ 27
Windows 插件安装 ........................................................................................................................ 30
LinuxSolaris/AIX 独立版安装......................................................................................................... 33
LinuxSolaris/AIX 插件安装 ............................................................................................................ 36
使用静默安装,简化团队范围内 C++test 的安装和设置 ............................................................... 40
概念和术语
代码规范静态分析 ......................................................................................................................... 42
Suppressions (抑制).................................................................................................................. 43
RuleWizard 图形化规则编辑器 ..................................................................................................... 44
BugDetective (数据流)静态分析 .............................................................................................. 46
单元测试 ....................................................................................................................................... 48
测试用例生成 ................................................................................................................................ 49
桩函数 ........................................................................................................................................... 50
工厂函数 ....................................................................................................................................... 51
运行时错误检测............................................................................................................................. 52
应用程序监测 ................................................................................................................................ 53
测试配置 ....................................................................................................................................... 54
命令行界面 (cli) ............................................................................................................................. 55
Parasoft 团队服务器 (Team Server) ............................................................................................. 56
Parasoft 报告中心 (Report Center) ............................................................................................... 57
Parasoft 项目中心 (Project Center)............................................................................................... 58
C++test 用户界面
浏览 C++test 用户界面.................................................................................................................. 60
从C++test 6.x 迁移
从 C++test 6.x 迁移....................................................................................................................... 66
跨团队配置和使用 Parasoft 产品
团队使用和配置简介 ..................................................................................................................... 76
设置和测试基础
初始化设置
Parasoft Test 入门 ........................................................................................................................ 79
创建项目 ....................................................................................................................................... 80
设置项目和文件选项 ..................................................................................................................... 107
指定自定义编译器的设置和链接器选项,以便用 C++test 进行测试 ............................................. 118
可用的 C++test 功能概览 ............................................................................................................. 122
运行测试和分析
从 GUI 进行测试............................................................................................................................ 125
从命令行界面 (cpptestcli) 进行测试............................................................................................... 129
复审结果
查看结果 ....................................................................................................................................... 173
了解报告 ....................................................................................................................................... 175
代码规范静态分析
执行代码规范静态分析.................................................................................................................. 188
复审代码规范静态分析结果........................................................................................................... 190
抑制报告可接受的违例.................................................................................................................. 192
自定义代码规范静态分析:概述 ................................................................................................... 196
自定义既有规则以及创建新规则 ................................................................................................... 197
调整规则种类、标识、名称和严重性级别 ..................................................................................... 202
BugDetective 数据流静态分析
使用 BugDetective 静态分析......................................................................................................... 205
复审 BugDetective 静态分析结果.................................................................................................. 208
自定义 BugDetective 静态分析 ..................................................................................................... 214
度量指标计算
计算度量指标 ................................................................................................................................ 225
查看和响应度量指标测量值........................................................................................................... 227
自定义度量指标设置 ..................................................................................................................... 229
代码审查
同行代码审查介绍 ......................................................................................................................... 231
测试创建和执行
创建和执行测试
生成测试用例进行回归测试和异常查找......................................................................................... 234
执行测试用例 ................................................................................................................................ 244
测试多线程应用程序 ..................................................................................................................... 249
浏览测试结果
复审测试执行结果 ......................................................................................................................... 253
断言失败 ....................................................................................................................................... 260
运行时异常.................................................................................................................................... 262
超时............................................................................................................................................... 263
未验证的输出 ................................................................................................................................ 264
测试执行过程中使用调试器........................................................................................................... 265
复审自动生成的测试用例 .............................................................................................................. 268
覆盖率分析
复审覆盖率信息............................................................................................................................. 273
改进覆盖率.................................................................................................................................... 286
扩展和修改测试套件
扩展和修正测试套件:总览........................................................................................................... 289
检验用于进行回归测试的测试用例................................................................................................ 291
添加 用户定义的 测试用例 ........................................................................................................... 293
使用从数据源提取的数据来参数化测试用例 ................................................................................. 308
使用工厂函数 ................................................................................................................................ 331
使用来自标准输入输出的数据 ....................................................................................................... 334
删除和禁用测试............................................................................................................................. 336
执行既有 CppUnit 测试用例 .......................................................................................................... 339
添加和修改桩函数 ......................................................................................................................... 342
运行时错误检测
执行运行时错误检测 ..................................................................................................................... 355
跨平台和嵌入式系统测试
执行跨平台单元测试:概述........................................................................................................... 362
构建 C++test 运行时库.................................................................................................................. 369
使用交叉编译器配置测试 .............................................................................................................. 387
自定义测试执行流程 ..................................................................................................................... 390
运行测试并复审结果 ..................................................................................................................... 410
提供符号的外部列表 ..................................................................................................................... 412
Wind River 工作台插件
Wind River 工作台简介 - C++test 集成 ......................................................................................... 416
项目创建和配置............................................................................................................................. 425
静态分析 ....................................................................................................................................... 438
单元测试 ....................................................................................................................................... 440
Wind River Tornado 支持
C++test Wind River Tornado 支持简介......................................................................................... 453
创建和配置项目............................................................................................................................. 457
静态分析 ....................................................................................................................................... 471
单元测试 ...................................................................................................................................... 472
ARM RealView 开发套件插件
ARM RVDS 简介 - C++test 集成................................................................................................... 479
创建和配置项目............................................................................................................................. 482
静态分析 ....................................................................................................................................... 484
运行时测试.................................................................................................................................... 485
导入并测试 ADS 1.2 CodeWarrior 项目........................................................................................ 489
QNX Momentics 插件
简介............................................................................................................................................... 495
项目配置 ....................................................................................................................................... 498
静态分析 ....................................................................................................................................... 499
运行时测试.................................................................................................................................... 500
德州仪器的 Code Composer Studio v4 插件
简介............................................................................................................................................... 503
项目创建和配置............................................................................................................................. 505
静态分析 ....................................................................................................................................... 506
运行时测试.................................................................................................................................... 507
德州仪器的 Code Composer Studio v3.x 支持
简介............................................................................................................................................... 510
项目创建和配置............................................................................................................................. 512
静态分析 ....................................................................................................................................... 513
运行时测试.................................................................................................................................... 514
Altium TASKING VX-toolset for TriCore 支持
简介............................................................................................................................................... 517
项目创建和配置............................................................................................................................. 518
静态分析 ....................................................................................................................................... 519
运行时测试.................................................................................................................................... 520
Fujitsu FR Softune 支持
简介............................................................................................................................................... 523
项目创建和配置............................................................................................................................. 524
静态分析 ....................................................................................................................................... 525
运行时测试.................................................................................................................................... 526
IAR 嵌入式工作台支持
简介............................................................................................................................................... 528
导入项目 ....................................................................................................................................... 532
静态分析 ....................................................................................................................................... 533
单元测试 ....................................................................................................................................... 534
Keil MDK-ARM 支持