Parasoft_c++test测试平台介绍.ppt_第1页
Parasoft_c++test测试平台介绍.ppt_第2页
Parasoft_c++test测试平台介绍.ppt_第3页
Parasoft_c++test测试平台介绍.ppt_第4页
Parasoft_c++test测试平台介绍.ppt_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Parasoft软件测试自动化工具 C+Test使用介绍,C+test的概况 C+Test的功能 C+test支持编译器 C+test的团队开发解决方案 C+test的静态测试 单元测试 回归测试 覆盖率测试 嵌入式系统测试,议程,美国Parasoft公司,成立于1987 总部在美国蒙罗维亚 全球15个office 技术创新:在美国软件技术领域拥有15项专利 目前为止,全球客户数量超过10,000+,Parasoft测试软件功能概要,BugDetective,静态测试,动态测试,C+test为整个软件生命周期提供即时测试,返回,C+Test的功能,根据用户选定的编码规范对代码做静态分析 提供一

2、个图形化的RuleWizard编辑器来定制用户编码规则 对代码路径做静态模拟以定位潜在的运行时错误 提供图形化接口和动态跟踪使代码走查自动化 自动生成并执行单元和组件级的测试 灵活的桩函数机制 完全支持回归测试 代码高亮显示的代码覆盖率分析 使用图形或命令行方式进行全面团队部署,返回,运行平台 Windows NT/2000/2003/XP/Vista Linux kernel 2.4 or 2.6 or higher with glibc 2.2 or higher and an x86-compatible processor Linux kernel 2.6 or higher with

3、 glibc 2.3 or higher and an x86_64-compatible processor (32-bit compatibility package is required) Solaris 7,8,9,10 and an UltraSPARC Processor 支持IDE插件(Plug-in) Eclipse 3.1,3.2 (32-bit),3.3 (32-bit) Visual Studio .NET 2003/2005/2008 Wind River Workbench 2.6 (for embedded development) ARM RVDS 3.x (f

4、or embedded development),C+test主要支持的环境,宿主编译器 Windows:Microsoft Visual C+ 6.0,.NET,.NET 2003, 2005,2008 ;GCC 2.95.x,3.2.x,3.3.x,3.4.x;Green Hills MULTI for Windows x86 Native v4.0.x Linux (x86 processor):GCC 2.95.x,3.2.x,3.3.x,3.4.x,4.0.x,4.1.x Linux (x86_64 processor):GCC 3.4.x,4.0.x,4.1.x Solaris:G

5、CC 2.95.x,3.2.x,3.3.x,3.4.x,4.0.x,4.1.x,Sun C+ 5.3 (Sun Forte C+ 6 Update 2),Sun C+ 5.5 (Sun ONE Studio 8),Sun C+ 5.6 (Sun ONE Studio 9),Sun C+ 5.7 (Sun ONE Studio 10) Sun C+ 5.8 (Sun ONE Studio 11);Green Hills MULTI for SPARC Solaris Native v4.0.x,C+test主要支持的编译器,目标硬件编译器 Wind River:EGCS-2.90;GCC-2.9

6、6,GCC 3.4.x and DIAB 5.4+ GCC 2.95.x - 4.1.x cross-compilers Green Hills 4.0.x ARM:ADS 1.2,RVCT 3.0,RVCT 3.1 Microsoft Visual C+ 8.0/9.0 For Windows Mobile 5.0/6.0 Microsoft Embeded C+ 4.0,C+test主要支持的编译器,返回,C+test的团队开发解决方案,在所有团队开发人员的机器上安装和许可C+test Professional Edition 在架构设计师或开发领导的机器上安装和许可C+test Arch

7、itect Edition 在团队服务器上安装和许可C+test Server Edition Parasoft GRS(组报告系统)是一种决策支持系统,使得软件开发流程具有可视性和受控性 Parasoft TCM(团队配置管理器)是一款软件,用来管理Test Configurations(团队配置) 、规则、规则映射、Suppressions(抑制)、跳过的资源和结果在团队范围的分配和共享。所有的团队 C+test 机器都应连接到 TCM(团队配置管理器),以实现对测试做法的集中化管理和应用 将所有 C+test 安装连接至您的源码控制器存储库 C+test 目前支持以下源码控制器系统,团队

8、开发人员,Professional,架构设计师/领导,Architect,团队服务器,Server,CVS Subversion (SVN) 1.2.x, 1.3.x, or 1 .4x ClearCase 2003.06.00 StarTeam 2005 CM Synergy 6.4 Perforce 2006.2 Visual SourceSafe 6.0, 2005,Parasoft团队协同开发管理,返回,C+Test静态测试,在c+Test中进行代码静态测试,主要使用到以下几个功能模块,自动代码撰写规范检查,自定义代码规范RuleWizard,Bugdetective检测RunTime

9、错误,C+Test 静态测试,C+Test提供了1000多条的内建规则,这些编程建议能够帮助用户提高代 码的可维护性和可重用性. RuleWizard功能满足用户自定义编码规范的需求 Bugdetective是PARASOFT的专利技术,用户在不运行程序的情况下就 能够查找出大多数运行时错误,100%没有误报,C+Test静态测试,Scott Meyer所著的Effective C+和More Effective C+ Sutter和Alexandrescu倡导的C+代码规范 Ellemtel倡导的代码规范 面向对象并经由实践验证的最佳代码规范 面向移植性代码规范(如从32位移植到64位) 面

10、向命名规则代码规范(完全可用户自定义的) MISRA代码规范(汽车电子行业规范) 由Qt (Trolltech)倡导并经由实践验证的最佳代码规范,自动代码撰写规范检查,Bugdetective,用户可以按照实际的规则需求自定义相应的编码规则 图形化方式,在不运行程序的情况下检测出运行时错误 没有误报,自定义代码规范RuleWizard,C+Test静态测试Demo,静态代码规则检查/Bugdetective模拟代码执行 创建/导入被测试工程 工程设置 测试配置 执行测试 审查测试结果 修正代码错误/缺陷,返回,大椭圆:应用程序 小椭圆:函数/对象 箭头: 用户输入 红星: 潜在的错误,为什么需

11、要进行单元测试,单元测试能帮助客户更准更全面地找到错误,显著提高软件质量 单元测试能够在改善软件质量的同时大量削减开发时间和成本 C+test提供全球最先进的自动化单元测试,单元测试 对程序最小元素进行测试 简单 高速 准确 全面 及时发现和修改错误 不会引发新的错误,1,4,5,2,3,项目代码,C+test如何帮助您进行自动化单元测试,模块,数据库,接口,硬件等外部依赖,4,5,2,测试函数,3,测试用例,C+test如何帮助您进行自动化单元测试,项目代码,模块,数据库,接口,硬件等外部依赖,C+test如何帮助您进行自动化单元测试,4,5,2,测试函数,3,桩函数,测试用例,项目代码,模

12、块,数据库,接口,硬件等外部依赖,C+test如何帮助您进行自动化单元测试,可对单一文件也可对批量文件进行自动单元测试 可对孤立文件或存在逻辑调用关系的文件进行自动单元测试 自动为最小单元直到完整系统生成测试用例包括: 自动生成包含测试用例的测试打包套件 自动生成桩函数取代外部依赖 自动生成激发测试用例的测试构件 自动运行测试用例并找到错误 支持用户通过其他工具建立的自定义测试用例 支持六种测试覆盖率分析 自动进行针对单元直到系统的回归测试,C+test进行自动化单元测试Demo,Unit Testing(使用自动生成的Test Case) 创建/导入被测试工程 工程设置 测试配置 生成测试用

13、例 执行测试用例 审查测试结果 修正代码错误/缺陷 注:基于Cal_Coverage 例程,C+test进行自动化单元测试Demo,Unit Testing(手动添加Test Case) 创建/导入被测试工程 工程设置 测试配置 生成测试用例 执行测试用例 添加测试用例 审查测试结果 修正代码错误/缺陷 注:基于Cal_Coverage 例程,C+test进行自动化单元测试Demo,Unit Testing(使用数据源提供Test Case Input/Output) 创建/导入被测试工程(Plug-In版本不用) 工程设置 测试配置 添加测试用例数据源 生成测试用例 用数据源更新测试用例 执

14、行测试用例 审查测试结果 修正代码错误/缺陷 注:基于cpptestdemo 例程,返回,回归测试,在我们的软件开发过程中,只要软件发生了改动,不管是功能的变化、模 块的增加或者bug的修改,都会对现有的软件造成影响,也就可能带来问题. 当软件的 bug被发现提交后,有可能发生以下几种情况: 追踪系统不够完善,该bug被疏忽没有得到修改 开发对于bug的理解不同,造成修改后的结果与期望仍不一致 理解不够深入,只修改了bug描述的表面现象,深层原因没有找到 bug被修改,但没有考虑到与此问题关联的其他模块 本bug被修改,之前被本bug掩盖的其他错误得以显现出来 由此我们可以看出进行回归测试的必

15、要性,但在每一次回归测试中遍历所 有的用例又是不现实的,特别是在测试后期,所以选择正确的回归测试策略 来改进回归测试的效率是非常有意义的.,第一阶段:,C+test如何帮助您进行自动化回归测试,第二阶段:,C+test回归测试Demo,回归测试(手动添加Test Case) 创建/导入被测试工程 工程设置 测试配置 生成测试用例 执行测试用例 修改被测试代码(模拟一个回归测试环境) 执行测试用例 审查测试结果 修正代码错误/缺陷 注:基于Cal_Coverage 例程,返回,覆盖率测试,代码覆盖率分析是在程序中寻找没有被用例测过的地方的流程;创建新的测试用例来增加覆盖率的流程;决定代码覆盖定量

16、的量度方法,同时也是一种间接度量质量的方法的过程。 覆盖分析是一种测试的技术,但你不应该依赖于它的单独使用。 使用覆盖率分析,实际上是确保你的测试的质量,进而确保实际产品的质量。覆盖率分析有着它的优点和缺点。你需要选择采用哪些度量的方法。你要设定一个最低的覆盖率来决定什么时候停止分析覆盖。 覆盖分析有时候也叫“测试覆盖分析”, 这两种术语是同义的。在学术界里,术语“测试覆盖”使用得比较多,在测试业界里的话,使用得多的就是术语“代码覆盖”。同样的,覆盖分析器有时候也被叫做“覆盖监控器”。,C+test如何帮助您进行测试覆盖率分析,自动显示未被测试覆盖到的代码 自动收集并报告所有已被执行的测试用例

17、 提供六种测试覆盖率分析: Line Coverage:语句覆盖 Basic Block Coverage:没有包含分支,控制流转的一段代码覆盖 Path Coverage:一条从函数入口到出口的路径覆盖 Decision (Branch) Coverage:分支覆盖 Modified Condition/Decision Coverage (MC/DC):MC/DC覆盖 (符合NASA的DO178B标准) Condition Coverage:条件覆盖 通过图形化界面交互显示代码的各种覆盖率数据,C+test覆盖率分析Demo,覆盖率分析(手动添加Test Case提高 覆盖率) 创建/导入

18、被测试工程 工程设置 测试配置 生成测试用例 执行测试用例 审查测试结果 手动添加测试用例 执行测试用例 审查测试结果 修正代码错误/缺陷 注:基于Cal_Coverage 例程,返回,为什么要进行嵌入式系统测试,嵌入式软件测试/嵌入式测试或叫交叉测试(cross-test)的目的与非嵌入式软件是相同的。但是,在嵌入式系统设计中,软件正越来越多地取代硬件,以降低系统的成本,获得更大的灵活性,这就需要使用更好的测试方法和工具进行嵌入式和实时软件的测试。 通常嵌入式系统对可靠性的要求比较高。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失。这就

19、要求对嵌入式系统,包括嵌入式软件进行严格的测试、确认和验证。随着越来越多的领域使用软件和微处理器控制各种嵌入式设备,对门益复杂的嵌入式软件进行快速有效的测试愈加显得重要。,嵌入式系统测试的难点,若所有测试都放在目标平台上有很多不利的因素: 测试软件,可能会造成与开发者争夺时间的瓶颈,避免它只有提供更多的目标环境 目标环境可能还不可行 比起主机平台环境,目标环境通常是不精密的和不方便的 提供给开发者的目标环境和联合开发环境通常是很昂贵的 开发和测试工作可能会妨碍目标环境已存在持续的应用 从经济上和开发效率上考虑,软件开发周期中尽可能大的比例在主机系统环境中进行,其中包括测试 确定host-tar

20、get测试环境后,开发测试人员又会遇到以下的问题: 多少开发人员会卷入测试工作(单元测试,软件集成,系统测试)? 多少软件应该测试,测试会花费多长时间? 在主机环境和目标环境有哪些软件工具,价格怎样,适合怎样? 多少目标环境可以提供给开发者,什么时候? 主机和目标机之间的连接怎样? 被测软件下载到目标机有多快? 使用主机与目标环境之间有什么限制(如软件安全标准)? 任何人或组织进行嵌入式软件的测试都应深入考虑以上问题,结合自身实际情况,选定合理测试策略和方案,C+test如何进行企业级/嵌入式自动单元测试,用户库资源,用户源码,完整测试报告,用户待测资源,测试用例资源(包含测试用例驱动),桩函数资源,测试框架 /测试激活套件,运行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论