性能数据采集方法、装置、设备及存储介质制造方法及图纸

技术编号:22363894 阅读:46 留言:0更新日期:2019-10-23 04:37
本发明专利技术涉及数据采集,公开一种性能数据采集方法、装置、设备及存储介质,该方法包括:在接收到自动化测试指令时,根据自动化测试指令中包含的字段信息确定待测应用程序;基于字段信息从测试用例库中读取并执行对应的测试用例脚本;获取测试用例脚本执行过程中生成的数据获取命令并将数据获取命令发送至待测应用程序;并对所述性能数据进行预处理后写入预设数据库进行保存,由于是通过执行测试用例脚本来自动化的采集数据,相较于现有的在程序代码中集成第三方软件开发工具包的数据采集方式,本发明专利技术能够在确保程序代码的安全性的同时,低成本高效率地实现对应用程序性能数据的采集。

Performance data collection method, device, equipment and storage medium

【技术实现步骤摘要】
性能数据采集方法、装置、设备及存储介质
本专利技术涉及自动化测试
,尤其涉及一种性能数据采集方法、装置、设备及存储介质。
技术介绍
目前,在计算机软件领域,移动端开发中最重要的是崩溃率,当崩溃率稳定下来后,移动端的工作的重心就转移到性能优化上。现如今有很多成熟的第三方软件如GT(随身调)、Wetest(一种测试平台)等性能监控软件,需要将第三方软件集成到应用程序(Application,App)代码里才能进行性能监控,存在代码数据不安全、高昂收费问题,同时接入第三方的软件开发工具包(SoftwareDevelopmentKit,SDK)包会增加测试App的包体积,但由于SDK中被使用的功能占比很少,反而导致了App响应速度降低的问题。因此,如何在保证应用程序代码数据安全性的同时,低成本高效率地实现对应用程序性能数据的采集,就成为了一个亟待解决的问题。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的在于提供了一种性能数据采集方法、装置、设备及存储介质,旨在解决现有技术在对应用程序进性能数据采集时,存在的安全性低、成本高昂且采集结果准确度不够的技术问题。为实现上述目的,本专利技术提供了一种性能数据采集方法,所述方法包括以下步骤:在接收到自动化测试指令时,根据所述自动化测试指令中包含的字段信息确定待测应用程序;基于所述字段信息从测试用例库中读取对应的测试用例脚本,并执行所述测试用例脚本;获取所述测试用例脚本执行过程中生成的数据获取命令,并将所述数据获取命令发送至所述待测应用程序;采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存,所述性能数据为所述待测应用程序对所述数据获取命令进行响应时反馈的数据。优选地,所述字段信息包括应用版本编号;所述根据所述自动化测试指令中包含的字段信息确定待测应用程序的步骤,包括:读取所述自动化测试指令中包含的所述应用版本编号,提取所述应用版本编号中携带的应用标识以及待测系统版本信息;根据所述应用标识查找对应的应用程序,并根据所述待测系统版本信息从查找到的所述应用程序中筛选出待测应用程序。优选地,所述基于所述字段信息从测试用例库中读取对应的测试用例脚本的步骤,包括:读取所述待测系统版本信息中包含的系统版本字段,在预先建立的系统版本字段和被测功能点之间的映射关系中查找所述系统版本字段对应的目标被测功能点;从测试用例库中查找覆盖所有所述目标被测功能点的测试用例脚本。优选地,所述数据获取命令包括卡顿比获取命令,所述采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存的步骤,包括:采集所述待测应用程序对所述卡顿比获取命令进行响应时反馈的数据矩阵;将所述数据矩阵中每一行的矩阵元素相加获得若干个帧率值,获取所述帧率值中超过预设阈值的目标帧率值;统计所述目标帧率值的数量,并根据统计的目标帧率值的数量获取所述待测应用程序的卡顿比,将所述卡顿比写入预设数据库进行保存。优选地,所述数据获取命令还包括流畅度获取命令,所述采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存的步骤,包括:采集所述待测应用程序对所述流畅度获取命令进行响应时反馈的流畅度日志;从所述流畅度日志中读取预设时段内的总帧数以及丢帧数,根据预设公式计算出所述待测应用程序对应的流畅度,并将所述流畅度写入预设数据库进行保存;其中,所述预设公式为流畅度=帧率*(总帧数-丢帧数)/总帧数。优选地,所述数据获取命令还包括响应时间获取命令,所述采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存的步骤,包括:采集所述待测应用程序对所述响应时间获取命令进行响应时生成的时间日志;从所述时间日志中提取预设函数的函数执行时间,根据所述函数执行时间获取所述响应时间,并将所述响应时间写入预设数据库进行保存。优选地,所述预设函数包括View.onTouchEvent函数和View.Draw函数;所述从所述时间日志中提取预设函数的函数执行时间,根据所述函数执行时间获取所述响应时间的步骤,包括:从所述时间日志中提取所述View.onTouchEvent函数执行时对应的事件点击时间,以及所述View.Draw函数执行时对应的绘制完成时间;计算所述事件点击时间和所述绘制完成时间之间的时间差,将所述时间差作为响应时间。此外,为实现上述目的,本专利技术还提出一种性能数据采集装置,所述装置包括:程序确定模块,用于在接收到自动化测试指令时,根据所述自动化测试指令中包含的字段信息确定待测应用程序;脚本确定模块,用于基于所述字段信息从测试用例库中读取对应的测试用例脚本,并执行所述测试用例脚本;脚本执行模块,用于获取所述测试用例脚本执行过程中生成的数据获取命令,并将所述数据获取命令发送至所述待测应用程序;数据采集模块,用于采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存,所述性能数据为所述待测应用程序对所述数据获取命令进行响应时反馈的数据。此外,为实现上述目的,本专利技术还提出一种性能数据采集设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的性能数据采集程序,所述性能数据采集程序配置为实现如上文所述的性能数据采集方法的步骤。此外,为实现上述目的,本专利技术还提出一种存储介质,所述存储介质上存储有性能数据采集程序,所述性能数据采集程序被处理器执行时实现如上文所述的性能数据采集方法的步骤。本专利技术通过在接收到自动化测试指令时,根据自动化测试指令中包含的字段信息确定待测应用程序;基于字段信息从测试用例库中读取对应的测试用例脚本,并执行测试用例脚本;获取测试用例脚本执行过程中生成的数据获取命令,并将数据获取命令发送至待测应用程序;并对所述性能数据进行预处理后写入预设数据库进行保存,由于本专利技术不需要在应用程序代码中集成第三方软件开发工具包,只需要根据预先编写的测试用例脚本即可完成数据收集,因而能够在确保应用程序代码的安全性的同时,低成本高效率地实现对应用程序性能数据的采集。附图说明图1是本专利技术实施例方案涉及的硬件运行环境的性能数据采集设备的结构示意图;图2为本专利技术性能数据采集方法第一实施例的流程示意图;图3为本专利技术性能数据采集方法第二实施例的流程示意图;图4为本专利技术性能数据采集方法第三实施例的流程示意图;图5为本专利技术性能数据采集装置第一实施例的结构框图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。参照图1,图1为本专利技术实施例方案涉及的硬件运行环境的性能数据采集设备结构示意图。如图1所示,该性能数据采集设备可以包括:处理器1001,例如中央处理器(CentralProcessingUnit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-F本文档来自技高网...

【技术保护点】
1.一种性能数据采集方法,其特征在于,所述方法包括:在接收到自动化测试指令时,根据所述自动化测试指令中包含的字段信息确定待测应用程序;基于所述字段信息从测试用例库中读取对应的测试用例脚本,并执行所述测试用例脚本;获取所述测试用例脚本执行过程中生成的数据获取命令,并将所述数据获取命令发送至所述待测应用程序;采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存,所述性能数据为所述待测应用程序对所述数据获取命令进行响应时反馈的数据。

【技术特征摘要】
1.一种性能数据采集方法,其特征在于,所述方法包括:在接收到自动化测试指令时,根据所述自动化测试指令中包含的字段信息确定待测应用程序;基于所述字段信息从测试用例库中读取对应的测试用例脚本,并执行所述测试用例脚本;获取所述测试用例脚本执行过程中生成的数据获取命令,并将所述数据获取命令发送至所述待测应用程序;采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存,所述性能数据为所述待测应用程序对所述数据获取命令进行响应时反馈的数据。2.如权利要求1所述的方法,其特征在于,所述字段信息包括应用版本编号;所述根据所述自动化测试指令中包含的字段信息确定待测应用程序的步骤,包括:读取所述自动化测试指令中包含的所述应用版本编号,提取所述应用版本编号中携带的应用标识以及待测系统版本信息;根据所述应用标识查找对应的应用程序,并根据所述待测系统版本信息从查找到的所述应用程序中筛选出待测应用程序。3.如权利要求2所述的方法,其特征在于,所述基于所述字段信息从测试用例库中读取对应的测试用例脚本的步骤,包括:读取所述待测系统版本信息中包含的系统版本字段,在预先建立的系统版本字段和被测功能点之间的映射关系中查找所述系统版本字段对应的目标被测功能点;从测试用例库中查找覆盖所有所述目标被测功能点的测试用例脚本。4.如权利要求1所述的方法,其特征在于,所述数据获取命令包括卡顿比获取命令;所述采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存的步骤,包括:采集所述待测应用程序对所述卡顿比获取命令进行响应时反馈的数据矩阵;将所述数据矩阵中每一行的矩阵元素相加获得若干个帧率值,获取所述帧率值中超过预设阈值的目标帧率值;统计所述目标帧率值的数量,并根据统计的目标帧率值的数量获取所述待测应用程序的卡顿比,将所述卡顿比写入预设数据库进行保存。5.如权利要求1所述的方法,其特征在于,所述数据获取命令还包括流畅度获取命令;所述采集性能数据,并对所述性能数据进行预处理后写入预设数据库进行保存的步骤,包括:采集所述待测应用程序对所述流畅度获取命令进行响应时反馈的流畅度日志;从所述流畅度日志中读取预设时段内的总帧数以及丢帧数,...

【专利技术属性】
技术研发人员:杨小彦
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1