[发明专利]一种基于强制执行的Android应用软件测试方法有效
申请号: | 201610382056.7 | 申请日: | 2016-06-01 |
公开(公告)号: | CN106055479B | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 王蕊;林子敏;张道娟;操晓春 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F21/53 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 邱晓锋 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于强制执行的Android应用软件测试方法。该方法通过结合静态和动态分析方法克服当前Android应用测试过程中存在的不足。首先基于静态方法确定关键行为相关的执行路径;然后通过控制应用的执行过程,限制应用的执行过程,并且首次采用异常容忍的执行沙盒对Android应用执行过程中的异常进行容忍,保证关键行为一定被触发。因此,该方法能够提取一些静态方法无法提取的执行参数信息,同时也能克服动态方法无法有效触发应用行为的问题。通过对多种恶意软件样本进行分析,本发明的方法能够以高概率的对它们的执行参数如URL等信息进行提取。 | ||
搜索关键词: | 一种 基于 强制执行 android 应用软件 测试 方法 | ||
【主权项】:
1.一种基于强制执行的Android应用软件测试方法,其步骤包括:1)采用反编译工具将Android应用代码转换为中间语言;2)基于静态分析技术分析Android应用代码中的函数调用关系,构造函数调用图,并对每个函数中的代码执行过程构造函数控制流图;3)在函数调用图和函数控制流图中,针对关键的函数调用行为,搜索和选择可能到达关键函数的执行路径;4)根据步骤3)选择的每条执行路径修改应用软件中的控制流条件,确保应用必然沿着选择的路径进行执行;具体的执行流控制包括以下两部分:4‑1)修改应用入口函数,在应用开始时,首先跳转到被选择执行路径的开始函数;4‑2)修改所有与选定执行路径相关的控制流条件,保证应用按照选定的路径进行执行;5)将执行流被控制的应用放入异常容忍的执行沙盒进行执行,即使出现异常,也继续从异常发生位置的下一条指令进行执行,保证选择的路径代码都被强制执行,保证关键行为一定被触发;6)在应用执行过程中,对执行参数进行搜集。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610382056.7/,转载请声明来源钻瓜专利网。