[发明专利]一种APP的测试方法、装置、可读存储介质及电子设备在审
| 申请号: | 202211610861.2 | 申请日: | 2022-12-14 |
| 公开(公告)号: | CN116225896A | 公开(公告)日: | 2023-06-06 |
| 发明(设计)人: | 郑旻 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 上海东信专利商标事务所(普通合伙) 31228 | 代理人: | 李丹;杨丹莉 |
| 地址: | 310063 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 app 测试 方法 装置 可读 存储 介质 电子设备 | ||
本发明涉及一种APP的测试方法及装置,方法包括:获取APP中的通讯接口函数作为第一切点,并在第一切点处注入第一切面程序;在线上环境运行注入第一切面程序的APP,以通过第一切面程序收集其在线上环境运行时通过通讯接口函数接收到的数据,作为测试数据;在对APP进行测试时,获取APP中的数据处理函数作为第二切点,并在第二切点处注入第二切面程序;在线下环境运行注入第二切面程序的APP,根据测试数据对其进行模糊测试,并通过第二切面程序获得测试结果。本发明的APP的测试方法及装置,通过第一切面程序收集的线上环境运行的APP的真实数据对线下环境运行的APP进行模糊测试,从而更容易地发现APP中的错误。
技术领域
本发明涉及APP测试领域,更具体地涉及一种APP的测试方法、装置、可读存储介质及电子设备。
背景技术
模糊测试是一种自动化的测试技术,它会根据一定的规则自动或半自动地生成随机数据,然后将这些产生的随机数据输入到动态运行的被测APP的API入口,同时监控被测APP是否有异常情况出现,如APP崩溃(闪退)或返回非预期的结果等,来发现APP的缺陷。
现有技术中,主要包括猴子测试或灰度测试方法,其中猴子测试方法是对测试APP的通讯接口发送纯随机数据进行测试,灰度测试方法则是在线上环境对部分真实的用户所使用的APP进行测试。
但是,猴子测试方法无法得到线上环境的真实数据,无法计算出代码覆盖率,也很难发现代码中的错误;灰度测试方法由于是对真实用户的APP进行测试,若发现异常,则说明已经影响到了真实的用户,会对用户体验造成影响。
发明内容
本发明的目的之一在于提供一种APP的测试方法,通过第一切面程序收集的线上环境运行的APP的真实数据对线下环境运行的APP进行模糊测试,并通过第二切面程序获取测试结果,从而更容易地发现APP中的错误。
基于上述目的,本发明一方面提供一种APP的测试方法,其包括以下步骤:
获取APP中的通讯接口函数作为第一切点,并在所述第一切点处注入第一切面程序;
在线上环境运行注入所述第一切面程序的APP,以通过所述第一切面程序收集注入所述第一切面程序的APP在线上环境运行时通过所述通讯接口函数接收到的数据,作为测试数据;
在对所述APP进行测试时,获取所述APP中的数据处理函数作为第二切点,并在所述第二切点处注入第二切面程序;
在线下环境运行注入所述第二切面程序的APP,根据所述测试数据对注入所述第二切面程序的APP进行模糊测试,并通过所述第二切面程序获得测试结果。
进一步地,在一些实施方式中,获取APP中的通讯接口函数作为第一切点,具体包括:
通过关键词搜索出APP的代码中的所有通讯接口函数作为第一切点。
进一步地,在一些实施方式中,获取所述APP中的数据处理函数作为第二切点,具体包括:
针对每一个通讯接口函数,根据其函数调用信息查找出所有数据处理函数作为第二切点。
进一步地,在一些实施方式中,根据所述测试数据对注入所述第二切面程序的APP进行模糊测试,具体包括:
针对所述测试数据中的每一个数据,生成与该数据的值相等的其他的类型的变异数据和/或随机生成与该数据的类型相同的其他值的变异数据,然后将所有变异数据传输至注入所述第二切面程序的APP中进行测试。
进一步地,在一些实施方式中,通过所述第二切面程序获得测试结果,具体包括:
通过所述第二切面程序获得被执行的数据处理函数的数量,并计算代码覆盖率;
通过所述第二切面程序获得测试过程中的异常信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211610861.2/2.html,转载请声明来源钻瓜专利网。





