C++test教程(译C++test_67_tutorial)

发布时间 : 星期三 文章C++test教程(译C++test_67_tutorial)更新完毕开始阅读

PARASOFT 最终用户许可协议(缺) ......................................................................................... 3 教程概述........................................................................................................................................... 3

前提条件 ................................................................................................................................... 3 样例ATM 应用程序 ............................................................................................................... 3 C++test 介绍 .................................................................................................................................... 5

编码标准分析 ........................................................................................................................... 5 单元测试 ................................................................................................................................... 5 促进团队范围的部署 ............................................................................................................... 6 利益........................................................................................................................................... 7 AEP和C++test小组部署 ....................................................................................................... 8

AEP如何工作 .................................................................................................................. 8 支持AEP的C++test小组部署....................................................................................... 9 模块使用流程 ......................................................................................................................... 11 主要概念 ................................................................................................................................. 12

编码标准分析(Coding Standard Analysis) ............................................................... 12 单元测试(Unit Testing) ............................................................................................. 12 单元测试用例的类型 ..................................................................................................... 13 工程配置(Project Configurations)............................................................................. 13 测试配置(Test Configurations) ................................................................................. 14 C++test 图形用户接口(GUI) ........................................................................................... 15

选项卡位置 ..................................................................................................................... 16 快捷菜单 ......................................................................................................................... 16

第一课:创建一个C++test工程 .................................................................................................. 18

背景......................................................................................................................................... 18 练习1:查看存在的工程配置 .............................................................................................. 18 练习2:创建工程 .................................................................................................................. 19

从Visual C++工程文件中建立一个工程(Windows和Visual C++) ...................... 19 从命令行保存文件选项(make,Ant )(缺) .......................................................... 22 手动创建一个工程 ......................................................................................................... 22 练习4:使用测试范围 .......................................................................................................... 25 第二课:使用测试配置 ................................................................................................................. 29

背景......................................................................................................................................... 29 练习1:修改测试配置 .......................................................................................................... 29 练习2:通过测试配置管理器(TCM)进行团队部署 ..................................................... 30 练习3:修改活动的测试配置 .............................................................................................. 31 第三课:执行编码标准分析 ......................................................................................................... 32

背景......................................................................................................................................... 32 练习1:用预定义的标准配置 .............................................................................................. 32 练习2:探索和改正违规 ...................................................................................................... 33 练习3:从GUI和#pragma中设置禁用 .............................................................................. 36 练习4:创建自定义标准配置 .............................................................................................. 38 练习5:生成HTML报告 .................................................................................................... 41 第四课:用源测试用例进行单元测试 ......................................................................................... 43

背景......................................................................................................................................... 43

准备......................................................................................................................................... 43

覆盖率 ............................................................................................................................. 43 前提条件 ......................................................................................................................... 44 调试器集成 ..................................................................................................................... 44 练习1:自动生成源单元测试 .............................................................................................. 45 练习2:查看结果 .................................................................................................................. 45 练习3:分析测试覆盖率 ...................................................................................................... 47 练习4:使用用户定义测试用例来提高覆盖率 .................................................................. 51 练习5:评审并验证函数的结果 .......................................................................................... 55 练习6:使用断言宏 .............................................................................................................. 58 练习7:使用setUp和tearDown函数 ................................................................................. 60 练习8:使用一个C++test测试包中的对象工厂 ............................................................... 62 练习9:使用和配置桩函数 .................................................................................................. 64 练习10:使用测试单元 ........................................................................................................ 68 练习11:在桩函数中使用C++test的API函数 ................................................................. 72 练习12:生成HTML报告 .................................................................................................. 74 第五课:用本地测试用例进行单元测试 ..................................................................................... 75

背景:..................................................................................................................................... 75 准备......................................................................................................................................... 75 练习1:自动生成异常测试的单元测试 .............................................................................. 75 练习2:定位异常测试失败报告的位置 .............................................................................. 77 练习3:对独立的函数微调测试条件 .................................................................................. 79 练习4:自动生成回归测试包 .............................................................................................. 80

准备测试配置 ................................................................................................................. 81 生成测试包 ..................................................................................................................... 83 练习5:分析测试覆盖率 ...................................................................................................... 87

练习6:用对象库和用户定义用例提高测试覆盖率 .................................................. 94 练习7:使用外部数据源 .................................................................................................... 101

练习8:通过用户定义测试用例验证功能性 ............................................................ 108 练习9:用桩函数来提高代码覆盖率 ................................................................................ 110 练习10:生成HTML报告 ................................................................................................ 115 第六课:从Visual C++中测试 ................................................................................................... 117

背景....................................................................................................................................... 117 练习1:配置Visual C++的集成测试参数 ........................................................................ 118 练习2:从Visual C++中测试 ............................................................................................ 119 练习3:查看分析测试结果 ................................................................................................ 120 第七课:用命令行接开口测试(缺) ....................................................................................... 122

PARASOFT 最终用户许可协议(缺)

教程概述

本教程先向你介绍了C++test,然后提供一些关于如何使用C++test来进行编码标准分析和对一个例子ATM应用程序单元测试课程。在阅读完教程之后,你应该已经拥有用C++test进行如下测试的基本技术。

? 检测代码是否遵循编码标准规则,这些规则可以预防错误、提高代码质量,评估和

修正报告的违规。

? 识别你的代码中未捕获的异常。

? 实现和执行用户定义的单元测试用例。 ? 用测试对象和插桩建立实际的测试用例。 ? 分析改进测试覆盖率。

? 生成带有以当前代码为基础的“功能快照”的回归测试包,用这些测试包识别代

码修改引入的非预期改变。

? 和项目组成员共享测试配置和测试资源。

? 从命令行运行测试,允许测试自动化地集成到每日构建。 课程按时间顺序列出。

前提条件

对所有的课程:

? 安装了C++test Professional 6.7, C++test Architect 6.7, or C++test Server 6.7及许可

证。版本必须为6.7或者更高;早期的版本将不能提供合适的默认值。

一些课程有附加的前提条件,这些将会在课程的开头指出。

样例ATM 应用程序

教程中的课程展示了如何测试ATM应用程序代码。这个应用程序是一个很简单的自动柜员机模型。它允许进入银行账户存取资金及查询余额。

? Account.[hc]xx —— 客户账户模型

? Bank.[hc]xx ——包含一组银行账户的模型

? BaseDisplay.[hc]xx——定义了一个简单的用户接口,提供通用的实现 ? ATM.[hc]xx ——ATM的客户接口 该应用程序的UML模型设计如下:

ATM工程的主代码在/examples/ATM。该目录的ATM/src中包含源文件和一个Make文件(用GNU gcc),并在Vs6.0,Vs7.0,Vs8.0目录下准备了Visual C++ 工程(分别针对Visual C++ 6, Visual C++ .NET, Visual C++ .NET 2003和Visual C++ 2005) 在开始阅读教程前,建立一个原始ATM目录的副本。教程会修改源文件,所以建议确 保安装目录下的原始例子保持完整。

联系合同范文客服:xxxxx#qq.com(#替换为@)