软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试工具>>其它工具>>正文
Purify检测的代码错误类型
文章出处:51testing论坛 作者:sincky 发布时间:2006-03-22

一、红色叹号提示

1、  ABR: Array Bounds Read

数组越界读(只检测动态内存分配的数组,对Global、Local、Static的数组无法检测)。

2、  ABW: Array Bounds Write

数组越界写(只检测动态内存分配的数组,对Global、Local、Static的数组无法检

3、  ABWL: Late Detect Array Bounds Write (An ABWL message indicates that the program wrote a value before the beginning or after the end of an allocated block of memory)
4、  BSR: Beyond Stack Read

函数可能读了一个当前堆栈之外的指针。例如在写变量值的时候程序出现了异常,那么读此变量时,就会发生BSR错误。(不适用于堆栈内的本地数组)

5、  BSW: Beyond Stack Write

函数可能写了一个当前堆栈之外的指针。(不适用于堆栈内的本地数组)

6、  EXU: Unhandled Exception

未经处理的异常

7、  FFM: Freeing Freed Memory

正在释放已经释放过的内存。
8、  FIM: Freeing Invalid Memory

试图释放未分配的、无效的内存。

9、  FMM: Freeing Mismatched Memory

释放不匹配的内存,用不正确的API函数释放某类内存。

10、FMR: Free Memory Read

读取已经释放或者未经分配的内存内容。

11、 FMW: Free Memory Write

对已经释放或者未经分配的内存做写入操作。

12、 FMWL: Late Detect Free Memory Write

13、IPR: Invalid Pointer Read

程序正在读取一个无效的,不可以设定地址的内存区域。

14、IPW: Invalid Pointer Write

程序正在对一个无效的,不可以设定地址的内存区域进行写操作。

red zone

For error detection runs, the bytes that are placed at the beginning and end of each allocated block of memory in a program at run time. The red zone is used to detect Array Bounds Read (ABR), Array Bounds Write (ABW), and Late Detect Array Bounds Write (ABWL) errors.

15、NPR: Null Pointer Read

空指针读。

16、NPW: Null Pointer Write

空指针写。

二、黄色警告信息

1、COM: COM API/Interface Failure

COM操作失败。在每一个COM API或COM接口调用后,Purify都会检查HRESULT,如果它的值不是标明操作成功的S_OK,就会显示此错误。

2、HAN: Invalid Handle

无效句柄。在期望出现句柄的地方出现了一个非句柄的值或者是一个错误类型的句柄。

3、ILK: COM Interface Leak

COM接口漏洞。当一个COM接口的引用总数大于1时,会出现此提示。

4、MLK: Memory Leak

堆内存泄露。指内存块中没有任何内容或者内存块没有被任何指针引用。以下两种情况都会出现此错误提示。

A、在函数中分配了本地内存,但在退出函数的时候没有Free。

B、内存块的指针被清除或改变或不在其作用域内。

If the section of the program where the memory is allocated and leaked is executed repeatedly, you might eventually run out of swap space, causing slow downs and crashes. This is a serious problem for long-running, interactive programs.

5、PAR: Bad Parameter

程序在调用Win32API或者C运行时常规函数时传递了一个错误的参数。

6、UMC: Uninitialized Memory Copy

将一个未初始化的值从一个内存区拷贝到另外一个。

7、UMR: Uninitialized Memory Read

读取未初始化的内存块的值。

三、兰色提示信息

1、BOX: MessageBox

如果程序中用到了MessageBox()或者MessageBoxEx()两个函数,Purify运行结束后就会出现此项提示信息。

2、EXC: Continued Exception

3、EXH: Handled Exception

4、EXI: Ignored Exception

5、HIU: Handle In Use

句柄被分配后,没有释放。

6、MAF: Memory Allocation Failure

内存分配失败。

7、MIU: Memory In Use

正要分配的堆内存上已经有指针了。

8、MPK: Potential Memory Leak

堆内存可能泄露。在内存块的开始没有指针,但在块的内部看起来有指针指向。

9、ODS: OutputDebugString

程序中调用了OutputDebugString函数。


站内搜索
相关文章
◎实时嵌入式软件测试工具的研究
◎CODETEST——嵌入式软件实时测试工具
◎基于GUI的自动化测试工具
◎QALoad优秀的性能测试工具
◎测试覆盖率工具--clover.net
◎开发自动化测试脚本的技巧和心得
◎GHOST V8.0 使用详解
◎水滴石穿C语言之代码检查工具
◎三款Java分析器点评
◎嵌入式软件工业化测试工具LOGISCOPE
◎WAS服务器负载测试软件导读
◎Radview公司的web性能测试和分析系列工具
◎Running Optimizeit from the command line
◎Optimizeit Code Coverage概览
◎Optimizeit Profiler概览
◎JProbe Suite 4.0使用说明
◎JProbe Profiler-优秀的剖析工具
◎JProbe使用说明
◎JProfiler跟踪和检查系统性能的好工具
◎Running Optimizeit from the command line
◎JProbe Profiler-优秀的剖析工具
◎Compuware DevPartner Studio简介
热门文章
◎测试工具的选择和使用
◎GHOST V8.0 使用详解
◎QALoad优秀的性能测试工具
◎水滴石穿C语言之代码检查工具
◎JProfiler跟踪和检查系统性能的好工具
◎开发自动化测试脚本的技巧和心得
◎Compuware DevPartner Studio简介
◎JProbe使用说明
◎Optimizeit Profiler概览
◎基于GUI的自动化测试工具
◎WAS服务器负载测试软件导读
◎三款Java分析器点评
◎testview测试工具详介
◎测试覆盖率工具--clover.net
◎JProbe Profiler-优秀的剖析工具
◎性能测试软件介绍:SilkPerformer
◎嵌入式软件工业化测试工具LOGISCOPE
◎CODETEST——嵌入式软件实时测试工具
◎实时嵌入式软件测试工具的研究
◎选择正确的GUI测试自动化工具
◎抛砖引玉,GUI自动化测试的设计
◎JProbe Suite 4.0使用说明
◎JProbe Profiler-优秀的剖析工具
◎Radview公司的web性能测试和分析系列工具
◎C++TEST基本概述
◎Optimizeit Code Coverage概览
◎代码检测:Code Review与CheckStyle
◎测试工具备查
◎C++Test的使用说明
◎C++TEST功能概述
◎Running Optimizeit from the command line
◎Running Optimizeit from the command line
◎用FIT 集成测试框架进行确认测试

Google提供的广告