[发明专利]一种应用程序的性能测试方法和装置在审
| 申请号: | 202010240523.9 | 申请日: | 2020-03-31 |
| 公开(公告)号: | CN113468032A | 公开(公告)日: | 2021-10-01 |
| 发明(设计)人: | 陈维燃;蒋政胜;郭晓彬 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F11/30 |
| 代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 王花丽;张颖玲 |
| 地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用程序 性能 测试 方法 装置 | ||
1.一种应用程序的性能测试方法,其特征在于,所述方法包括:
基于应用程序的安装包运行所述应用程序,并向运行中的所述应用程序注入对应于性能测试场景的测试代码;
通过所述测试代码运行所述应用程序的模拟服务,并通过所述模拟服务向所述应用程序发送伪随机的用户事件流,以
触发所述应用程序根据所述伪随机的用户事件流运行;
在所述应用程序根据所述伪随机的用户事件流运行的过程中,实时采集所述应用程序所生成的数据;
对所述数据进行分析处理,以获得性能测试结果。
2.根据权利要求1所述的方法,其特征在于,所述向运行中的所述应用程序注入对应于性能测试场景的测试代码,包括:
通过执行性能测试脚本,向运行中的所述应用程序注入对应于所述性能测试场景的测试代码,以获取所述应用程序的控件树信息;
基于所述应用程序的控件树信息,将所述模拟服务与所述应用程序之间建立通信通道,以使
所述模拟服务通过所述通信通道向所述应用程序发送所述伪随机的用户事件流;
其中,所述性能测试场景包括以下至少之一:
启动测试场景;内存占用测试场景;中央处理器占用测试场景;图形处理器占用测试场景;流畅度测试场景;耗电量测试场景。
3.根据权利要求2所述的方法,其特征在于,所述通过所述模拟服务向所述应用程序发送伪随机的用户事件流,以触发所述应用程序根据所述伪随机的用户事件流运行,包括:
通过所述模拟服务、并经由所述通信通道,向所述应用程序发送所述伪随机的用户事件流,以使
所述伪随机的用户事件流在所述应用程序的控件树中进行传递,所述应用程序响应所述控件树中传递的所述伪随机的用户事件流。
4.根据权利要求1所述的方法,其特征在于,所述在所述应用程序根据所述伪随机的用户事件流运行的过程中,实时采集所述应用程序所生成的数据,包括:
在所述应用程序根据所述伪随机的用户事件流运行的过程中,实时记录所述应用程序的运行日志;
针对所述性能测试场景的类型创建数据采集任务;
根据对应于所述性能测试场景的数据采集任务,在所述运行日志中提取相应的数据;
其中,所述数据包括以下信息至少之一:
启动耗时信息;内存占用信息;中央处理器占用信息;图形处理器占用信息;流畅度信息;耗电量信息。
5.根据权利要求1所述的方法,其特征在于,所述对所述数据进行分析处理,以获得性能测试结果,包括:
在所述数据中提取对应于各个时间点的数据值,并将所述对应于各个时间点的数据值写入至数据库表;
调用所述数据库表的接口,以获得所述应用程序在各个时间点的数据值;
以时间点为横坐标、并以所述应用程序在各个时间点的数据值为纵坐标,以坐标系的形式确定所述应用程序的性能测试结果。
6.根据权利要求1至5任一项所述的方法,其特征在于,在所述基于应用程序的安装包运行所述应用程序之前,所述方法还包括:
通过执行安装包获取脚本,从应用程序构建平台中对应所述应用程序的分支中拉取所述应用程序的安装包;
或者,通过执行所述安装包获取脚本,从应用程序商店获取所述应用程序的安装包。
7.根据权利要求1至5任一项所述的方法,其特征在于,在所述对所述数据进行分析处理,以获得性能测试结果之后,所述方法还包括:
调用数据库表的接口,获得多个应用程序在各个时间点的数据值;
其中,所述多个应用程序是应用程序类型相同、且应用程序不同的多个应用程序,或者,应用程序相同、且应用程序版本不同的多个应用程序;
根据所述多个应用程序在各个时间点的数据值,确定所述多个应用程序的性能对比图表,并进行展示。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010240523.9/1.html,转载请声明来源钻瓜专利网。





