欢迎来到天天文库
浏览记录
ID:61511026
大小:21.96 KB
页数:8页
时间:2021-02-08
《济南研博 软件测试 PC-Lint使用简介.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、济南研博软件测试PC-Lint使用简介LINT工具是一种软件质量保证工具,许多国外的大型专业软件公司,如微软公司,都把它作为程序检查工具,在程序合入正试版本或交付测试之前一定要保证通过了LINT检查,他们要求软件工程师在使用LINT时要打开所有的编译开关,如果一定要关闭某些开关,那么要给出关闭这些开关的正当理由。 可想而知,如果从我们编码后第一次编译程序时就使用LINT来检查程序,并且保证消除所有的LINT告警,我们就不会遇到象今天这么多的告警信息。即使在今天,我们如果能抽出一定的精力来消除程序中的LIN
2、T告警,以后再维持这种无告警状态就是很容易的了。我们程序质量的提高也是不言而喻的。 PC-LINT是GIMPELSOFTWARE公司的产品,其中的内容是非常广泛的,光是选项就有300多个,涉及到程序编译及语法使用中的方方面面。本篇培训材料旨在引导读者入门,学会PC-LINT的基本使用方法,起抛砖引玉的作用,能让读者从这里起步继续去研究如何娴熟地使用PC-LINT的各种选项,能让它充分为我们的开发工作服务。1.概述 如果要给LINT工具下一个形象点的定义,那就是:一种更加严格的编译器。它不仅可以象普通编译
3、器那样检查出一般的语法错误,还可以检查出那些虽然完全合乎语法要求,但很可能是潜在的、不易发现的错误。请看下面的例子:1:2:char*report(intm,intn,char*p)3:{4:intresult;5:char*temp;6:longnm;7:inti,k,kk;8:charname[11]="JoeJakeson";9:10:nm=n*m;11:temp=p==""?"null":p;12:for(i=0;i13:{14:k++;15:kk=i;16:}17:18:if(k==1)resul
4、t=nm;19:elseif(kk>0)result=1;20:elseif(kk<0)result=-1;21:22:if(m==result)return(temp);23:elsereturn(name);24:} 上面的代码用一般的编译器编译是一段有效的代码,但是用PC-LINT编译就会有几个告警。首先第8行向name数组赋值时丢掉了nul字符,第10行的乘法精度会失准,第11行的比较有问题,第14行的变量k没有初始化,第15行的kk可能没有被初始化,第22行的result也有可能没有被初始化,第
5、23行返回的是一个局部对象的地址。这段代码在大部分编译器下是可以顺利编译通过的,继续查找其中的错误就要靠人工调试程序,如果程序很大,这将是一项烦琐的工作,没有人可以保证能找出所有的这类问题,但PC-LINT只通过一次简单的编译就可做到,显然为我们节省了大量的开发时间。 下面就让我们看看如何安装使用PC-LINT。2.如何安装PC-LINT PC-LINT的软件的安装过程比较复杂,选项较多,下面根据安装过程,逐条说明每一步的含义。0)如果是zip文件,将ZIP安装文件展开到目录C:lint.ins下,进
6、入COMMANDPROMPT,先进行目录映射substg:c:lint.ins,然后转到G:,执行install。其他步骤和下面的从软盘安装是一样的。1)在A:驱插入PC-LINT安装盘,输入A:>install命令,进入开始安装栏,按任意键继续,进入PC-LINT介绍栏,再按任意键继续。2)进入环境选择栏,这一栏中有三个选项:WindowsNT/Windows95MS-DOS(DOSextended)OS/2(32bit)如果计算机安装了WIN95、WIN97、WIN98或WINNT要选择Window
7、sNT/Windows95,如果只有DOS则选择DOS。3)进入安装目录选择栏,它推荐的是C:>LINT,如不想安装在这个目录下,可输入自己想要安装的目录,然后按回车确认,如果要安装的目录不存在,它会提示为你建立这个目录。我们这里选C:>LINT4)选择安装盘所在的磁盘驱动器,我们这里选A:5)判断是否要选择多种编译器或编译库的配置,如果要对不同编译环境下的程序进行LINT,则选YES,否则选NO。然后回车确认。6)这时看到一个编译器列表,在这个表中选择自己使用的编译器,如果表中没有自己使用的编译器,可
8、选择通用编译器:GenericCompilers。按回车确认。这个选项会体现在co-xxx.lnt文件中。7)接着安装程序会让你选择一个的内存模型,可以根据自己程序区和数据区的实际大小选择一个恰当的内存模型。如果CPU为32位68K系列,则要选择:32-bitFlatModule。内存模型的选项会体现在STD.LNT文件中。8)选完内存模型后,会看到一个库类型的列表,在这里选择一个或多个编译时使用的库。这个选项会
此文档下载收益归作者所有