
Parasoft C++test 7.3
厂商名称:Parasoft 产品类别:测试与调试工具 交货形式:授权+盒包 联系方式:TEL:010-88472432
C++Test是一个C/C++单元级测试工具,自动测试C/C++类、函数或部件,而不需要编写测试用例、测试驱动程序或桩调用代码。C++Test能够自动测试代码构造(白盒测试)、测试代码的功能性(黑盒测试)和维护代码的完整性(回归测试)。C++Test是一个易于使用的产品,能够适应任何开发生命周期。通过将C++Test集成到开发过程中,您能够有效地防止软件错误,提高代码的稳定性,并自动化地实现单元测试(这是极端编程过程的基础)。
· 环境和编译器: + AIX 5.3/PowerPC 平台 + IBM XL C/C++ 编译器 v8.0 + GNU GCC 4.1.x + 针对 C/C++ 开发人员的 Eclipse IDE 3.5 + ARM + ARM RealView 开发套件 4.0 * + ARM C/C++ 编译器, RVCT4.0 * + ARM/Thumb C/C++ 编译器, RVCT2.2 * + Keil + Keil uVision3 v3.7 * + ARM/Thumb C/C++ 编译器, RVCT3.1 针对 uVision * + Keil C51 编译器 V8.18 (只有静态分析) * + IAR + IAR Embedded Workbench 5.3 和 5.4 * + IAR ANSI C/C++ 编译器 v5.30 针对 ARM (只针对 C 语言) * + Texas Instruments(德州仪器) + Code Composer 3.1 和 3.3 * + TMS320C6x C/C++ 编译器 v5.1 和 v6.0 * + TMS320C2000 C/C++ 编译器 v4.1 (只有静态分析) * + QNX + QNX 软件开发平台 6.4 * + QNX GCC 4.2.x *
(*) Windows 宿主机
· 静态分析: + BugDetective + 改进了性能 - 增量分析模式 + 支持多线程 API 的定制 + 改进了资源泄漏检测的配置 + 广义的内存分类规则修订(现在是资源分类的一部分) + 防止整数溢出/下溢漏洞的新规则(BD-SECURITY-INTOVERF) + 编码标准 + 改进了性能 - 并行分析模式 + 新的内建测试配置 + The Power of Ten - Rules for Developing Safety Critical Code + HIS Source Code Metrics(源代码度量) + GJB5369(中华人民共和国国家军用标准) + 由于修复和更新修改了的内建规则
· 单元测试: + 支持工厂函数 + 改进了性能 - 测试生成和测试可执行准备的并行分析模式
运行时分析: + 支持应用程序监控 + 支持运行时错误检测(内存分析) + 在应用程序监控和单元测试模式中可用
跨平台测试: + 改进了测试执行流程定制能力 + 改进了 C++test 运行时库的管理
团队工作: + 支持全局的目标管理 + 能够导出首选项到配置文件
1. 自动建立测试驱动和桩函数
C++Test自动建立一个测试驱动程序,其设计目标是极大化类的测试覆盖性和错误检测。为类建立测试驱动,你只要简单地打开这个类,然后按Build Test键。C++Test将自动建立测试驱动程序。 另外,如果被测的方法需要调用当时还不存在或无法访问的函数,C++Test能够自动生成桩函数;这样能够测试与外部资源操作的交互作用和不包含任何隐藏的弱点。C++Test不是实际调用这些函数,而是调用桩函数并返回桩函数提供的值。如果你需要控制使用的返回值,你可以建立一个桩调用表,生命输入/输出的关系。
2. 静态测试
C++Test内嵌了业界最出名的Effective C++(epcc)、More Effective C++(mepcc)、meyer-klaus(mk)以及Universal Code Standard(ucs)等超过700条的C/C++规范,用户自己还能自定义规范。同时,它也集成了由parasoft累积出来的一些规范。静态测试中,C++Test会对代码进行详尽的扫描,验证代码中是否存在和这些规范相冲突的地方,尽快的发现一些简单或低级错误,避免由它们带来的集成扩散。
3. 白盒测试
C++Test提供了一种有效并且高效的方法执行白盒测试。C++Test完全自动执行所有的白盒测试过程,自动生成和执行精心设计的测试用例。自动标记任何运行失败,并以一种简单的图示化结构显示。然后自动保存这些测试用例,能够方便地用于以后的回归测试。 由于C++Test能够自动生成桩函数,或允许你加入自己的桩函数,因此它能够测试引用外部对象的类。换句话说,C++Test能够运行任何一个或一组类,并自动生成和执行一组测试用例,它们被设计成能够发现尽可能多的错误。
4. 黑盒测试
C++Test通过自动化黑盒测试的大部分操作,减轻了这类测试的负担。特别是以两种方法自动化黑盒测试的第一阶段--建立测试用例: · 帮助你设置每个测试用例的结果 你可以简单地输入测试用例输入,然后让C++Test运行测试用例并自动确定实际的输出结果。如果结果正确,不需要其它动作。如果结果不正确,你可以输入预期的输出结果。这样比手工输入每个测试用例的结果更快更容易。
5. 回归测试
C++Test完全自动化与回归测试有关的所有步骤。C++Test首次测试某个类时,自动保存其测试和测试参数。当需要执行回归测试时,你可以打开合适的项目和文件,运行所有原来的白盒和黑盒测试用例;C++Test会自动运行完全相同的测试用例和测试参数,并告之发现的任何问题。这意味着你能够立即知道修改是否引入了任何错误。
6. 监视测试覆盖性
为了帮助你测量当前使用的测试用例集合的有效性,并且给你提供达到尽可能高的覆盖性的信息,C++Test自动监视测试覆盖性。
C++Test实时跟试覆盖性,然后建立一个综合测试覆盖性报告。覆盖性窗口图示化地说明了当前正在被执行的代码行,已执行过的行和每行的执行次数。因此,它不仅指出了一个代码行是否被测试过,而且说明了被测试的有多彻底。这些信息对于确定那些代码需要追加测试是非常有帮助的。
C++test 7.3 版本是目前官方发布的最新中文版,引入了以下新功能和增强功能: |