一种客户端设备性能测试方法及系统的制作方法_2

文档序号:9667230阅读:来源:国知局
的被测程序运行日志及被测客户端设备的性能数据。
[0037]可选地,所述被测客户端设备的性能数据包括:被测程序CPU占用率、被测程序内存占用率、被测程序所占实际物理内存、被测程序独自占用的物理内存、帧率、流量、设备温度、设备剩余可用内存、电池电量和电压。
[0038]从以上技术方案可以看出,将对被测客户端设备的操作转化为自动化脚本语句,并进一步组合成包含多个测试用例集的测试脚本;当被测客户端设备空闲时,将新的测试任务分发到该被测客户端设备上,被测客户端设备执行测试任务对应的测试脚本;在被测客户端设备执行测试脚本的过程中,收集被测客户端设备的性能数据及被测程序的运行日志;测试完成后,接收被测客户端设备上传的测试日志;测试任务完成时,根据测试日志和运行日志对性能数据进行性能的统计分析,得到分析结果。本申请方案能够自动高效地完成对客户端设备性能的测试。更进一步地,本申请将各个测试用例的性能数据进行清晰划分,测试过程中每个时间点都对应着具体的测试步骤、所在功能模块、被测程序运行日志、性能数据等,可以帮助程序准确定位问题的信息。
【附图说明】
[0039]图1为现有技术中的客户端设备性能测试流程示意图;
[0040]图2为本申请实施例提供的客户端设备性能测试系统的逻辑架构示意图;
[0041]图3为任务分发管理模块203的处理流程图;
[0042]图4为本申请实施例提供的客户端设备性能测试系统的一种设备硬件连接框图;
[0043]图5为客户端设备性能测试方法流程示意图。
【具体实施方式】
[0044]为使本申请技术方案的技术原理、特点以及技术效果更加清楚,以下结合具体实施例对本申请技术方案进行详细阐述。
[0045]本申请实施例提供的客户端设备性能测试系统的逻辑架构如图2所示,该客户端设备性能测试系统200包括脚本录制模块201、性能收集模块202、任务分发管理模块203、文件服务器模块204、测试数据分析模块205、测试报告模块206和邮件模块207。
[0046]所述脚本录制模块201,实现了将传统的测试人员手工执行性能测试的操作步骤转化为脚本代码和数据的形式的自动化测试操作;相同自动化测试脚本可在不同分辨率、不同安卓版本的客户端设备上进行运行。
[0047]具体的,将被测客户端设备连接到脚本录制模块201,脚本录制模块201实时刷新出被测客户端设备当前页面,即可实时将操作转化为自动化脚本语句。可选地,还可以录入测试用例的步骤说明及等待时间(默认为3秒钟),最终将多条自动化脚本语句按照逻辑顺序组合成包含多个测试用例集的测试脚本。
[0048]所述性能收集模块202,用于在被测客户端设备执行测试脚本的过程中,收集被测客户端设备的性能数据及被测程序的运行日志。具体包括:
[0049]启动程序运行日志的接口与测试初始化同时进行,完整记录被测程序在启动时的运行日志,以确保运行日志的完整性,也方便后期用来定位问题。
[0050]以测试脚本回放为主线程,被测程序运行日志与性能数据收集各占用一条辅线程,三条进程同步进行。性能数据的收集间隔时间为1秒钟,每秒钟性能收集线程将依次做如下数据的获取:时间戳、测试用例标题以及被测客户端设备的性能数据,这样就得到了测试脚本执行的每一步及每一个时间点对应的被测程序运行日志及被测客户端设备的性能数据。
[0051]所述被测客户端设备的性能数据包括但不限于:被测程序CPU占用率、被测程序内存占用率、被测程序所占实际物理内存(比例分配共享库占用的内存)、被测程序独自占用的物理内存(不包含共享库占用的内存)、帧率、流量、设备温度、设备剩余可用内存、电池电量和电压。
[0052]所述任务分发管理模块203,用于接收来自脚本录制模块201的测试任务,所述测试任务中携带录制好的测试脚本;根据被测客户端设备的状态进行测试任务分发。例如当被测客户端设备空闲时,将新的测试任务分发到该被测客户端设备上。
[0053]所述任务分发管理模块203记录其连接的每台被测客户端设备的状态信息,包括被测客户端设备的详细参数(内存、CPU、品牌、屏幕尺寸、覆盖用户群等)、运行状态(空闲状态或者工作状态);根据被测客户端设备的详细参数,记录有该被测客户端设备测试应用时的达标值作为测试性能分析的依据。具体地说,根据被测客户端设备的详细参数,经多次测试后,分析并整理出该被测客户端设备测试应用时的性能标准,包括:CPU平均值、内存最大值、内存平均值、FPS平均值、可用内存最小值等,并存储到任务分发管理模块203当中,今后将以该性能标准作为分析日志的依据。
[0054]任务分发管理模块203还用于对所连接的每台被测客户端设备分别建立对应的一个任务队列,当接收到新的测试任务,将测试任务放入任务队列;先检测被测客户端设备的运行状态,若空闲,则任务出队,被测客户端设备开始执行任务。
[0055]图3为任务分发管理模块203的处理流程图,该处理流程包括:
[0056]步骤301:任务分发管理模块203接收来自脚本录制模块201的测试任务。
[0057]步骤302:任务分发管理模块203对于所连接的每台被测客户端设备分别建立对应的一个任务队列,控制器将接收到的任务放到每台被测客户端设备对应的任务队列中。
[0058]步骤303:任务分发管理模块203轮询被测客户端设备的运行状态,若被测客户端设备处于工作状态,则等待;若被测客户端设备处于空闲状态,执行步骤304。
[0059]步骤304:任务从队列中出队,被测客户端设备执行任务。
[0060]步骤305:任务执行停止时,检测任务是否执行成功,若成功则返回步骤303 ;若失败,继续执行步骤306。
[0061]步骤306:判断该测试任务重新运行次数是否为0,若是,则再运行一次该任务(步骤307),后返回步骤305 ;若重新运行次数不为零,记录当前被测客户端设备测试该任务结果为失败(步骤308),然后返回步骤303。
[0062]所述文件服务器模块204,用于存储用户上传的测试应用包。当进行测试时,任务分发管理模块203从文件服务器模块204下载各测试任务对应的测试应用包,任务分发管理模块203发送指令将测试应用包安装到被测客户端设备上。测试完成后,被测客户端设备上传测试日志至文件服务器模块204。
[0063]测试数据分析模块205用于检测到某个测试任务完成时,从文件服务器模块204下载该任务对应的所有测试日志,从性能收集模块202下载性能数据以及运行日志,根据测试日志和运行日志对性能数据进行性能的统计分析,获得分析结果。
[0064]具体的,每台被测客户端设备在运行测试任务时均产生测试日志,用于记录测试过程中的性能数据。测试数据分析模块205检测到某一测试任务完成时,从文件服务器模块204下载该测试任务所有的测试日志,对日志进行数据分析和处理,根据既定的每台被测客户端设备的性能标准,统计测试应用本次测试中CPU平均值、内存最大值、内存平均值、可用内存等性能指标的通过率,根据既定的打分策略,对测试应用本次测试进行打分,直观地反映测试应用的兼容性。
[0065]所述测试报告模块206,用于将性能测试中的数据分析结果整理后自动生成测试报告,测试报告的格式可以是表格(EXCEL版)或网页版两种。
[0066]具体的,测试过程中会产生以文本文件形式保存的性能数据,测试结束后该文本文件会自动上传至测试数
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1