预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2010年12月北京邮电大学学报Dec.2010 第33卷第6期JournalofBeijingUniversityofPostsandTelecommunicationsVo.l33No.6 文章编号:10075321(2010)06010304 函数后置信息在软件静态测试中的应用 金大海1,宫云战1,杨朝红2,肖庆2 (1.北京邮电大学网络与交换国家重点实验室,北京100876;2.装甲兵工程学院信息工程系,北京100072) 摘要:为了提高基于模式的代码缺陷检测精度,提出一种应用函数后置信息(PFI)软件静态测试方法.采用PFI描 述函数中本地修改集、全局修改集以及参数和返回对数据流的影响,应用控制流迭代技术生成PFI.该方法以较低 的计算复杂性得到所有函数的后置信息,并可应用于静态分析过程中的区间计算和缺陷模式识别阶段.在缺陷检 测系统中的应用结果表明,该方法具备一定的可行性. 关键词:软件测试;静态测试;函数后置信息;控制流迭代 中图分类号:TP311.5文献标志码:A ApplicationsofPostFunctionInformationinSoftwareStaticTesting JINDahai1,GONGYunzhan1,YANGZhaohong2,XIAOQing2 (1.StateKeyLaboratoryofNetworkingandSwitchingTechnology,BeijingUniversityofPostsandTelecommunications,Beijing100876,China; 2.DepartmentofInformationEngineering,AcademyofArmoredForceEngineering,Beijing100072,China) Abstrac:tAmethodusingpostfunctioninformation(PFI)ispresented,inordertoimprovethepreci sioninsoftwarestatictesting.ThePFIincludeslocalmodifiedsetandglobalmodifiedsetusedtomodel theeffectondataflowundertesting.AnalgorithmtogeneratePFIbyusingcontrolflowiterationforeach functionisproposedaswel.lThegeneratedPFIsbythealgorithmcanbeusedinthephaseofinterval computationanddefectpatterndetection.Applicationsindefectdetectsystemverifiesthefeasibilityof thismethod. Keywords:softwaretes;tstaticanalysis;postfunctioninformation;controlflowiteration 基于缺陷模式的软件测试是近几年来逐渐流行量或表达式的区间取值不当造成误报. 起来的一种测试技术[14],在对程序执行信息抽象化被测程序实例是一个包括两级函数调用的 [57] 的基础上,在分析过程中匹配故障模式.现有一C++程序,函数f调用f1,f1调用f2.如果不考虑函 些关于函数调用副作用的研究[814]都不能有效地应数的副作用,在静态分析的过程中,相关变量的取值 用于基于缺陷模式的软件静态测试中.区间将会与实际值有所偏差,造成对缺陷的误报或 漏报.例如,下文的被测程序实例中第4行对变量p 1函数副作用对测试的影响 赋值为空,在第6行和第7行对其引用时会误报为 对于某些函数调用,在其函数体内或子函数中p的空指针引用;第3行为指针q分配空间,第8行 可能会对外部变量、相关参数进行修改,并返回特定后会误报为q的内存泄漏;如果忽略第5行函数f1 信息,这些内容会对其调用者的上下文产生影响.的返回区间,第6行会漏报r的空指针引用;由于未 在静态分析的过程中如果忽略之,则会由于相关变考虑f1对参数变量q的处理,第7行会漏报q的空 收稿日期:20090914 基金项目:国家高技术研究发展计划项目(2009AA012404);国家高技术研究发展计划重点项目(2007AA010302) 作者简介:金大海(1974),男,博士后,Emai:ljindh@bupt.edu.cn;宫云战(1962),男,教授,博士生导师. 104北京邮电大学学报第33