基于逆向HOOK对应用程序进行自动化测试的方法和装置与流程

文档序号:36031713发布日期:2023-11-17 16:09阅读:24来源:国知局
基于逆向HOOK对应用程序进行自动化测试的方法和装置与流程

本申请涉及自动化测试领域,具体而言,涉及一种基于逆向hook对应用程序进行自动化测试的方法和装置、电子设备以及非瞬时性计算机可读存储介质。


背景技术:

1、对于终端应用程序,迭代过程中的功能、稳定性、性能等领域的持续优化和保障是提升用户体验的重要基础。

2、目前,在对终端应用程序进行运行性能测试时,为了获取终端设备的运行时数据,主要通过日志输出的方式或者日志远程上报的方式进行收集。通过日志输出的方式需要解析日志输出流,并进行相关的信息收集;而日志远程上报的方式需要通过持久化存储后进行综合分析。因此,目前的自动化测试方式依赖于终端应用程序的内部代码实现,通用性较差,且增加了解析难度和存储处理成本。

3、另外,在自动化执行方面,业界主流的自动化框架(例如,appium)能力比较依赖界面操作,无法对应用程序内部的接口进行调用,也无法获取运行时的相关数据,使用的局限性较大。

4、因此,由于终端应用程序的稳定性和性能保障始终缺乏有效的测试手段,导致问题的暴露和修复周期较长,严重影响了用户的产品使用体验。


技术实现思路

1、本申请旨在提出一种基于逆向hook对应用程序进行自动化测试的方法和装置、电子设备以及非瞬时性计算机可读存储介质,以解决终端应用程序的稳定性和基础功能验证的问题。

2、根据本申请的一方面,提出一种基于逆向hook对应用程序进行自动化测试的方法,包括:响应于脚本运行指令,将所述逆向hook注入到所述应用程序中;利用所述逆向hook调用所述应用程序的应用接口;通过所述应用接口获取所述应用程序的运行数据。

3、根据一些实施例,将所述逆向hook注入到所述应用程序中包括:将所述逆向hook的应用框架注入到所述应用程序中。

4、根据一些实施例,将所述逆向hook的应用框架注入到所述应用程序中,包括:利用重打包技术将所述逆向hook的应用框架注入到所述应用程序中。

5、根据一些实施例,所述逆向hook的应用框架包括frida框架、xpsoed框架和/或sub框架。

6、根据一些实施例,所述方法还包括:利用所述应用程序的运行数据,对所述应用程序进行功能、性能和/或sdk基础能力验证。

7、根据一些实施例,所述应用程序的运行数据包括:所述应用程序运行期间的内存使用数据、cpu运行数据、启动耗时和/或页面加载耗时。

8、根据一些实施例,将所述逆向hook注入到所述应用程序中包括:将预设的ui自动化框架与所述逆向hook的框架融合;将融合后的所述hook框架注入到所述应用程序中。

9、根据本申请的一方面,提出一种基于逆向hook对应用程序进行自动化测试的装置,包括:逆向hook注入单元,用于响应于脚本运行指令,将所述逆向hook注入到所述应用程序中;应用接口调用单元,用于利用所述逆向hook调用所述应用程序的应用接口;测试执行单元,用于通过所述应用接口获取所述应用程序的运行数据、操控所述应用程序和/或模拟所述应用程序的运行环境。

10、根据本申请的一方面,提出一种电子设备,包括:处理器;以及存储器,存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行如前任一实施例所述的方法。

11、根据本申请的一方面,提出一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如前任一实施例所述的方法。

12、根据本申请的实施例,基于逆向hook技术对应用程序的接口进行调用,获取应用程序的运行时数据和运行日志,从而实现了对应用程序的自动化测试。由于整个测试过程无需开发人员进行配合,因此,对终端本身并无侵入性,且复用性较强。

13、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。



技术特征:

1.一种基于逆向hook对应用程序进行自动化测试的方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,将所述逆向hook注入到所述应用程序中包括:

3.根据权利要求2所述的方法,其特征在于,将所述逆向hook的应用框架注入到所述应用程序中,包括:

4.根据权利要求2所述的方法,其特征在于,所述逆向hook的应用框架包括frida框架、xpsoed框架和/或sub框架。

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述应用程序的运行数据包括:

7.根据权利要求1所述的方法,其特征在于,将所述逆向hook注入到所述应用程序中包括:

8.一种基于逆向hook对应用程序进行自动化测试的装置,其特征在于,包括:

9.一种电子设备,包括:

10.一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如权利要求1-7中任一项所述的方法。


技术总结
本申请提出一种基于逆向HOOK对应用程序进行自动化测试的方法和装置、电子设备以及非瞬时性计算机可读存储介质,所述方法包括响应于脚本运行指令,将所述逆向HOOK注入到所述应用程序中;利用所述逆向HOOK调用所述应用程序的应用接口;通过所述应用接口获取所述应用程序的运行数据、操控所述应用程序和/或模拟所述应用程序的运行环境。根据本申请的实施例,基于逆向HOOK技术对应用程序的接口进行调用,获取应用程序的运行时数据和运行日志、操控应用程序和/或模拟应用程序的运行环境,从而实现了对应用程序的自动化测试。由于整个测试过程无需开发人员进行配合,因此,对终端本身并无侵入性,且复用性较强。

技术研发人员:陈立平,曹立成
受保护的技术使用者:浙江天猫技术有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1