250 likes | 507 Views
内容. PurifyPlus 背景 PureCoverage Purify Quantify 回顾. PurifyPlus 的背景. 什么是 PurifyPlus PurifyPlus 是 IBM Rational 的可靠性测试工具包,主要包括: 代码覆盖测试工具: PureCoverage 内存和资源检查工具: Purify 性能瓶颈检查工具: Quantify. PurifyPlus 的背景. PurifyPlus 可以做什么 可以针对 VB、VC、Java 程序,进行基于结构信息动态白盒测试工作: 代码覆盖测试: PureCoverage
E N D
内容 • PurifyPlus • 背景 • PureCoverage • Purify • Quantify • 回顾
PurifyPlus的背景 • 什么是PurifyPlus • PurifyPlus是IBM Rational的可靠性测试工具包,主要包括: • 代码覆盖测试工具:PureCoverage • 内存和资源检查工具:Purify • 性能瓶颈检查工具:Quantify
PurifyPlus的背景 • PurifyPlus可以做什么 • 可以针对VB、VC、Java程序,进行基于结构信息动态白盒测试工作: • 代码覆盖测试:PureCoverage • 内存和资源检查:Purify • 性能瓶颈检查:Quantify • 可以与IBM Rational其他测试工具集成使用,可以与VC集成使用 • 一般为开发人员在单元测试活动中使用
内容 • PurifyPlus • 背景 • PureCoverage • Purify • Quantify • 回顾
PureCoverage • 代码覆盖分析工具 • 记录执行过的代码,生成代码覆盖分析报告
PureCoverage • 演示时间 • PureCoverage是什么样子? • 如何生成代码覆盖报告? • 产品自带例子Hello.c
PureCoverage • PureCoverage干了什么? • PureCoverage的功能特点: • 1、显示覆盖和覆盖次数:函数、代码 • 2、直接对应源代码,并不同颜色标注 • 3、使用多种图表显示统计结果 • 4、可以累计度量,记录中间度量结果 • 5、归并和比较同一代码多次运行的覆盖结果 • 6、使用过滤器可设置不记录某些模块/函数/文件的覆盖 • 7、并存取度量结果(cfy),导出度量结果(txt)
PureCoverage • PureCoverage还有什么功能特点: • 1、支持VB、VC、Java; • 2、支持WinNT、Solaris、HP-UX • 3、和VC集成使用、单独使用、API使用(.net/JVM); • 4、与PurifyPlus其他工具集成并共享数据;
PureCoverage • PureCoverage是怎么干的? • PureCoverage的工作流程: • 1、File|Run打开一个exe文件的程序 • 2、系统自动执行该程序 • 3、执行过程中可以记录中间覆盖数据 • 4、程序执行结束,系统显示覆盖分析结果 • 5、用户对分析结果进行比较和研究,或者再一次运行程序获取更多的或者累计的覆盖数据
PureCoverage • 又是演示时间 • 教学用例子Sortdemo.mak • 注意将调试信息编译进来
内容 • PurifyPlus • 背景 • PureCoverage • Purify • Quantify • 回顾
Purify • 内存和资源分析工具 • 记录执行过程中的内存使用状况,发现并定位内存使用错误,比如: • 非初始化内存读 • 数组越界读写 • 自由内存读写 • 堆栈越界读写 • 内存泄露
Purify • 演示时间 • Purify是什么样子? • 如何记录执行过程中的内存使用状况,发现并定位内存使用错误? • 产品自带例子Hello.c
Purify • Purify干了什么? • Purify的功能特点: • 1、主动搜查/记录/分析程序运行过程中(扫描频率不为0)的内存/API/COM/资源和句柄的使用状况/误用/泄漏 • Help|Rational Purify Messages • ABR/ABW • BSR/BSW • … • MLK • MPK • …
Purify • Purify干了什么? • Purify的功能特点: • 1、主动搜查/记录/分析程序运行过程中(扫描频率不为0)的内存/API/COM/资源和句柄的使用状况/误用/泄漏 • 2、错误直接定位对应到源代码,并标注 • 3、使用多种图表显示分析结果 • 4、可以累计分析,记录中间分析结果 • 5、归并和比较同一代码多次运行的内存检查结果 • 6、使用过滤器可设置不记录某些模块/函数/文件的某些内存检查 • 7、可同时记录覆盖信息 • 8、并存取度量结果(pcy),导出度量结果(txt)
Purify • Purify还有什么功能特点: • 1、支持VB、VC、Java; • 2、支持WinNT、Solaris、HP-UX、SGI IRIX、Siemens Reliant UNIX • 3、和VC集成使用、单独使用; • 4、与PurifyPlus其他工具集成并共享数据; • 5、无需源代码或Debug版本也能发现错误,使用BCI技术专利 • 6、与Debuger集成,并强制GC
Purify • Purify是怎么干的? • Purify的工作流程: • 1、File|Run打开一个exe文件的程序 • 2、系统自动执行该程序 • 3、执行过程中可以记录中间内存检查结果 • 4、程序执行结束,系统显示内存分析结果 • 5、用户对分析结果进行比较和研究,或者再一次运行程序获取更多的或者累计的内存检查结果
Purify • 又是演示时间 • 教学用例子Sortdemo.mak • 注意将调试信息编译进来
内容 • PurifyPlus • 背景 • PureCoverage • Purify • Quantify • 回顾
Quantify • 性能瓶颈分析工具 • 通过精确的计时数据来找出性能瓶颈,并追踪版本间的性能变化
Quantify • 演示时间 • Quantify是什么样子? • 如何通过精确的计时数据来找出性能瓶颈? • 产品自带例子Hello.c
Quantify • Quantify干了什么? • Quantify的功能特点: • 1、记录程序运行时间,找出时间瓶颈 • 代码行、函数 • 模块、线程、时间段 • 2、直接对应到源代码,并标注 • 3、使用多种图表显示分析结果,并显示函数调用关系图 • 4、可以累计分析,记录中间分析结果 • 5、归并和比较同一代码多次运行的性能检查结果 • 6、使用过滤器可设置不记录某些模块/函数/文件的某些时间数据,可以使用多种时间记录方式 • 7、并存取度量结果(qfy),导出度量结果(txt)
Quantify • Quantify还有什么功能特点: • 1、支持VB、VC、Java; • 2、支持WinNT、Solaris、HP-UX • 3、和VC集成使用、单独使用; • 4、与PurifyPlus其他工具集成并共享数据; • 5、无需源代码或Debug版本也能分析性能,使用BCI技术专利
Quantify • Quantify是怎么干的? • Quantify的工作流程: • 1、File|Run打开一个exe文件的程序 • 2、系统自动执行该程序 • 3、执行过程中可以记录中间性能度量数据 • 4、程序执行结束,系统显示性能分析结果 • 5、用户对分析结果进行比较和研究,或者再一次运行程序获取更多的性能度量数据
内容 • PurifyPlus • 背景 • PureCoverage • Purify • Quantify • 回顾