[发明专利]Android应用网络相关行为测试方法有效

专利信息
申请号: 201911268850.9 申请日: 2019-12-11
公开(公告)号: CN111176981B 公开(公告)日: 2022-10-21
发明(设计)人: 宋巍;张炽华;钱昌盛 申请(专利权)人: 南京理工大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 南京理工大学专利中心 32203 代理人: 陈鹏
地址: 210094 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: android 应用 网络 相关 行为 测试 方法
【说明书】:

发明公开了一种Android应用网络相关行为测试方法,以Android应用的apk文件为输入,以测试出的应用与网络相关的错误作为输出,本发明基于模糊测试的思想,首先对待测Android应用进行静态分析,来定位Android应用中网络APIs调用的位置和网络数据使用相关的代码切片;之后,在定位到的网络APIs调用位置处,对待测Android应用进行代码插桩,来向网络响应注入模拟的网络数据;最后,自动化的运行插桩后的Android应用,应用自动运行过程中会触发网络请求,并执行插桩代码来验证应用是否能正确处理不同的响应数据。本发明能全面、高效地测试Android应用与网络相关的行为。

技术领域

本发明属于程序分析与测试领域,具体涉及一种Android应用网络相关行为测试方法。

背景技术

Android系统由于其开放性和通用性,已成为目前最流行的嵌入式操作系统,相应的Android应用数量也随之爆发。而随着移动网络和无线网络的飞速发展,越来越多的Android应用都需要连接网络,主要有两个目的:一、使用网络功能与应用自身服务器进行交互;二、访问、下载、上传互联网资源。如果不联网,应用无法更新数据,用户之间也无法进行交流和资源共享。然而,由于网络的多样性(例如2G/3G/4G/5G,WIFI)和不稳定性,应用经常由于网络的问题而崩溃,影响了应用的正常使用。一项研究报告指出,20%的应用崩溃是由于网络调用造成的,其中主要原因是应用未正确的处理网络调用返回的未期望数据(脏数据)或空数据。因此,测试人员应重视应用网络调用及其相关行为的测试。

目前,Android应用与网络相关的行为测试的难度体现在两个方面:其一,网络环境太复杂。一方面,目前手机上可使用的网络类型有多种,主要有2G/3G/4G/5G、WIFI,而且在这几种网络类型中还可进行自由的切换;另一方面,网络环境具有不稳定性,例如,弱网和无网环境。如此复杂的外部网络环境很难进行模拟。其二,Android应用网络功能的实现具有多样性,这主要体现在Android应用开发中存在多种网络调用API和网络框架供开发者选择,不同的网络功能可能使用不同的实现方式,这无形中增加了网络行为测试的难度。

尽管有很多研究工作提出了针对Android应用的测试方法,但它们大多是用于测试应用的GUI,很少有专门用于测试与网络相关的行为的方法。当使用这些GUI测试方法来测试应用时,很多的网络相关的行为都无法有效和高效地探索。经调研发现,大部分开发者通过手动方式来对网络相关行为进行测试,或者借助于一些硬/软件模拟器来模拟不同的网络环境和网络异常(例如,增加网络延迟,限制网络带宽),以检查应用在这些情况下是否出现错误。尽管这种做法可能会发现一些与网络相关的错误,但是代价昂贵且耗时。

发明内容

本发明的目的在于提供一种Android应用网络相关行为测试方法,用于高效、全面地测试Android应用与网络相关的行为。

实现本发明目的的技术解决方案为:一种Android应用网络相关行为测试方法,以Android应用的apk文件为输入,以测试出的与网络相关的错误作为输出,具体步骤如下:

步骤1,使用soot将待测Android应用的apk文件转换为jimple文件,基于jimple文件得到Android应用代码中网络APIs的调用位置;

步骤2,对待测Android应用进行代码插桩,自动截取网络响应数据并根据模拟规则生成模拟数据,最后注入到网络响应中,得到插桩后的apk文件;

步骤3,使用基于组件分类的广度优先探索算法自动化运行插桩后的Android应用,应用自动运行过程中触发网络请求,并执行插桩代码来验证应用是否能正确处理不同的响应数据,输出测试结果。

本发明与现有技术相比,其显著优点:(1)本发明不需模拟各种网络环境,直接基于模糊测试思想,将网络环境对应用造成的影响(异常网络返回数据)注入到Android应用中,方法简单实用;(2)测试过程自动化,能全面高效地测试应用网络相关行为。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911268850.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top