[发明专利]基于符号执行的GUI程序测试用例扩增方法在审
申请号: | 201410712797.8 | 申请日: | 2014-11-28 |
公开(公告)号: | CN104536880A | 公开(公告)日: | 2015-04-22 |
发明(设计)人: | 徐宝文;周骏贵;张智轶;杨薇然;陈振宇;张驰;濮力;程秀才;谢佩章;王婧宇 | 申请(专利权)人: | 南京大学;江苏苏测软件检测技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 南京天翼专利代理有限责任公司 32112 | 代理人: | 奚铭 |
地址: | 210093 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 符号 执行 gui 程序 测试 扩增 方法 | ||
1.基于符号执行的GUI程序测试用例扩增方法,其特征是对于一个GUI待测程序,使用工具Java Path Finder,简称JPF,为待测程序源代码创建“.jpf”文件,并静态分析待测程序代码,获取JPF符号执行分析后产生的有效输入值;确定已有测试用例中需要修改的参数,然后根据控件的名字属性作为关键字搜索与定位到待测程序中所述需要修改的参数对应的位置,得到修改参数有效输入值,再用所述修改参数有效输入值替换已有测试用例原脚本中对应位置的输入值,生成新的测试用例,所述新的测试用例用于扩增原测试用例集。
2.根据权利要求1所述的基于符号执行的GUI程序测试用例扩增方法,其特征是按照以下步骤生成“.jpf”文件并进行符号执行:
1)扫描待测程序中包含的待测类,并确定其中的程序方法及输入参数的个数;
2)对每个输入参数,随机产生参数值;
3)对于每个待测类,自动生成包含main()方法的java文件,即“.jpf”文件,main()方法中包含待测类中所有的方法;
4)根据新生成的java文件设定JPF执行时的参数,包括target、classpath、symbolic.method、listener、search.multiple_errors和vm.storage.class这6个执行参数:
target:指定新生成的包含待测类的java文件的名字;
classpath:指定新生成的定包含待测类的java文件编译后的bin文件所在目录;
symbolic.method:指定待测类中的待测方法,如果待测类中的一个方法是被另一个方法调用的,则只将进行调用的方法作为待测方法的候选,忽略被调用的方法;
listener:指定JPF中针对符号执行的监控器,设为.symbc.SymbolicListener;
search.multiple_errors:包含True和False两种值,True指在符号执行过程中即使碰到错误仍会继续执行,False指在符号执行过程中碰到错误时停止执行,默认值为True;
vm.storage.class:用于存储状态的类,设为nail,即空;
5)根据步骤4)设定的JPF的执行参数,用JPF执行新生成的包含待测类的java文件,获得该类的符号执行结果,得到有效输入值。
3.根据权利要求1或2所述的基于符号执行的GUI程序测试用例扩增方法,其特征是对于一个GUI待测程序,将其前端的输入域和后台代码的参数相对应,以便根据名字属性确定更新输入值的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学;江苏苏测软件检测技术有限公司;,未经南京大学;江苏苏测软件检测技术有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410712797.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于频繁子图挖掘的错误定位方法
- 下一篇:一种基于混合策略的测试数据生成方法