CN107391354B - 自动监测终端性能的方法及系统、存储装置 - Google Patents
自动监测终端性能的方法及系统、存储装置 Download PDFInfo
- Publication number
- CN107391354B CN107391354B CN201710611431.5A CN201710611431A CN107391354B CN 107391354 B CN107391354 B CN 107391354B CN 201710611431 A CN201710611431 A CN 201710611431A CN 107391354 B CN107391354 B CN 107391354B
- Authority
- CN
- China
- Prior art keywords
- user
- time
- performance
- feedback information
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3457—Performance evaluation by simulation
Abstract
本发明公开一种自动监测终端性能的方法及系统、存储装置。该方法包括:通过shell命令和Instrumentation框架模拟用户的操作事件;获取执行操作事件时输入输出系统的反馈信息;将反馈信息转换成用户可识别的性能数据。基于此,本发明能够自动监测终端的各项性能,节约人工操作成本,且确保监测结果的精确性,可移植性较强,不会增加硬件成本。
Description
技术领域
本发明涉及电子设备技术领域,具体涉及一种自动监测终端性能的方法及系统、存储装置。
背景技术
随着电子技术的发展和人们生活水平的不断提高,手机等各种智能终端的使用越来越普及,人们在购买时不仅仅比较硬件配置,更看重的是软件性能,例如是否出现卡顿、反应时间是否较慢,应用运行是否流畅、长时间使用是否会出现各种性能问题等。于此,用于发现性能问题的终端性能监测是当前生产阶段中必不可少的一个环节。但是,当前性能监测一般是依赖于高速摄像机的人工测试予以实现,这不仅需要花费大量人力,而且由于终端各项性能指标的差异很小,即使极小的人工操作误差,也会对性能测试结果造成非常大的影响。
发明内容
有鉴于此,本发明提供一种自动监测终端性能的方法及系统、存储装置,能够自动监测终端的各项性能,节约人工操作成本,且确保监测结果的精确性,可移植性较强,不会增加硬件成本。
本发明一实施例的自动监测终端性能的方法,包括:
通过shell命令和Instrumentation框架模拟用户的操作事件;
获取执行所述操作事件时输入输出系统的反馈信息;
将所述反馈信息转换成用户可识别的性能数据。
本发明一实施例的自动监测终端性能的系统,包括处理器以及与处理器连接的收发器,所述处理器用于通过shell命令和Instrumentation框架模拟用户的操作事件,所述收发器用于获取执行操作事件时输入输出系统的反馈信息,所述处理器进一步用于将所述反馈信息转换成用户可识别的性能数据。
本发明一实施例的存储装置,存储有程序数据,所述程序数据能够被执行以实现上述自动监测终端性能的方法。
有益效果:本发明通过shell命令、Instrumentation框架及输入输出系统这些指令及程序即可监测终端的各项性能,可移植性较强,不会增加硬件成本,并且完全自动化监测,能够节约人工操作成本,避免人工操作误差对监测结果的影响,确保监测结果的精确性。
附图说明
图1是本发明一实施例的自动监测终端性能的方法的流程示意图;
图2是本发明另一实施例的自动监测终端性能的方法的流程示意图;
图3是基于图1所示方法监测终端流畅度的流程示意图;
图4是基于图1所示方法监测应用启动时间的流程示意图;
图5是本发明的自动监测终端性能的系统一实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明所提供的各个示例性的实施例的技术方案进行清楚、完整地描述。在不冲突的情况下,下述各个实施例以及实施例中的特征可以相互组合。
请参阅图1,为本发明一实施例的自动监测终端性能的方法。所述自动监测终端性能的方法可以包括步骤S11~S13。
S11:通过shell命令和Instrumentation框架模拟用户的操作事件。
本实施例可以通过shell(壳)命令来获取终端中被监测应用的信息,并据此生成相应的测试脚本(或测试程序)。Instrumentation框架可视为Android系统的一个自动化测试工具,并作为基于Android系统的测试环境的核心,其通过将测试脚本和Android系统运行在同一个进程来实现自动化测试功能。在这个框架下,测试脚本可以精确控制应用执行各项操作,例如发送UI(User Interface,用户界面)事件给应用、在应用执行各项操作期间检查其运行状态。
在模拟用户的操作事件之前,测试脚本可以通过DUMP命令预先获取被测试应用的界面元素(UI element),例如屏幕、按钮等。而后,测试脚本可以调用sendKeySync()或sendPointerSync()函数模拟用户对应用的操作事件,例如点击事件、滑动事件、亮屏事件等。
S12:获取系统执行所述操作事件时输入输出系统的反馈信息。
S13:将反馈信息转换成用户可识别的性能数据。
所述输入输出系统的反馈信息包括但不限于AMS(Application managementsystem,应用管理系统)、WMS(Windows media services,流媒体服务器)、PMS(Productionmanagement system,生产管理系统)以及LOGD(记录模块)中至少一个所输出的信息。
在实际应用场景中,Android系统执行每一操作事件时是具有多个进程的,例如对于某一触控事件,按照先后顺序,Android系统依次执行的进程分别为用户触控屏幕到屏幕响应、屏幕接到触控事件到触控事件分发、触控事件生成到意图解析、意图解析到启动对应进程、进程启动到界面显示,并且,所述反馈信息中与这些进程相关的一部分参数并不能直观反映某一项或某几项性能指标,或者说某一项性能指标并不需要基于全部进程的参数进行监测,因此,本实施例需要将所述反馈信息转换成用户可识别的性能数据。另外,本实施例也可以将所述反馈信息中每一进程的参数换成用户可识别的性能数据,也就是说,对每一项性能指标进行分离监测,从而更加有利于性能优化。
本实施例相当于为终端增加了一项性能自动监测的功能,在现实应用场景中,结合图2所示,在通过shell命令和Instrumentation框架模拟用户的操作事件之前,本实施例可以调用性能测试工具(performance tools)创建一UI,任务管理器(Task manager)通过该UI获取用户创建的需要监测的(性能)任务,例如技术性能(Technical Performance)监测任务、流畅度(fluency)监测任务、响应时间(Response Time)监测任务、应用启动时间(App launch time)监测任务。而后执行S11~S13,最后以列表形式,例如xls(excel),输出性能数据。
下面分别以监测流畅度和监测应用启动时间这两个应用场景,介绍本实施例的自动监测终端性能的方法。
请参阅图3,对于流畅度监测任务,首先通过测试脚本产生一输入事件(Inputkey-event),该输入事件可以表示对呼叫列表(call list)、联系人列表(contacts list)、文件列表(file list)以及照片列表(photos list)中任一者执行触控操作,而后Instrumentation框架调用sendPointerSync()函数模拟用户的操作事件,接着测试脚本可以调用grep命令监测LCD队列缓冲区(queue buffer)更新的帧率,以及调用dumpsys函数监测GPU(Graphics Processing Unit,图形处理器)绘制每帧画面的时间,最后根据所述LCD队列缓冲区更新的帧率以及GPU绘制每帧画面的时间得到当前显示的帧率(fps)。
请参阅图4,对于应用启动时间监测任务,首先通过测试脚本产生一输入事件,该输入事件可以表示对美图(gallery)、音乐(music)、摄像(camera)以及设置(setting)中任一应用执行触控操作,而后Instrumentation框架调用sendPointerSync()函数模拟用户的操作事件,接着测试脚本解析应用启动意图(get app launch intent),然后调用forceStopPackage命令强制关闭解析应用启动意图这一进程,并监测应用进程启动时间以及界面显示时间(AMS visible time),最后将应用进程启动时间和界面显示时间作为所述应用启动时间。
由上述可知,本发明通过shell命令、Instrumentation框架及输入输出系统这些指令及程序即可监测终端的各项性能,可移植性较强,不会增加硬件成本,并且完全自动化监测,能够节约人工操作成本,避免人工操作误差对监测结果的影响,确保监测结果的精确性。
图5是本发明的自动监测终端性能的系统一实施例的结构示意图。如图5所示,所述自动监测终端性能的系统50括处理器51和收发器52,收发器52可以通过通信总线53与处理器51连接。处理器51用于通过shell命令和Instrumentation框架模拟用户的操作事件。收发器52用于获取执行操作事件时输入输出系统的反馈信息。处理器51进一步用于将所述反馈信息转换成用户可识别的性能数据。
在本实施例中,在通过shell命令和Instrumentation框架模拟用户的操作事件之前,所述处理器51还可以用于创建UI,并通过所述UI获取用户需要监测的(性能)任务,本实施例所监控的性能包括流畅度、响应时间及启动时间中的至少一项。
对于流畅度这一性能监控任务,收发器52获取的反馈信息可以包括LCD队列缓冲区更新的帧率以及GPU绘制每帧画面的时间,处理器51用于根据所述LCD队列缓冲区更新的帧率以及GPU绘制每帧画面的时间得到当前显示的帧率。
对于应用启动时间这一性能监控任务,收发器52获取的反馈信息可以包括用户触控屏幕时间、意图解析时间、应用进程启动时间以及界面显示时间,处理器51用于将应用进程启动时间以及界面显示时间作为应用启动时间。
该自动监测终端性能的系统50的上述结构元件对应执行上述实施例的自动监测终端性能的方法,具有与其相同的技术效果。
其中,上述自动监测终端性能的系统50及自动监测终端性能的方法可用于对智能手机、PDA(Personal Digital Assistant,个人数字助理或平板电脑)等移动终端,以及佩戴于肢体或者嵌入于衣物、首饰、配件中的具有应用安装功能的可穿戴设备进行性能监控。
另外,上述各实施例之间可以相互结合,并且上述功能如果以软件功能的形式实现并作为独立产品销售或使用时,可存储在一个电子设备可读取存储介质中,即,本发明还提供一种存储有程序数据的存储装置,所述程序数据能够被执行以实现上述实施例的方法,该存储装置可以为如U盘、光盘、服务器等。也就是说,本发明的各个实施例可以以软件产品的形式体现出来,其包括若干指令用以使得一台智能终端执行各个实施例所述方法的全部或部分步骤。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,例如各实施例之间技术特征的相互结合,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (3)
1.一种自动监测终端性能的方法,其特征在于,所述方法包括:
通过shell命令和Instrumentation框架模拟用户的操作事件;
获取执行所述操作事件时输入输出系统的反馈信息;
将所述反馈信息转换成用户可识别的性能数据;
所述执行所述操作事件时具有按照先后顺序依次进行的多个进程,
所述将所述反馈信息转换成用户可识别的性能数据,包括:
将所述反馈信息中每一进程的参数换成用户可识别的性能数据;
在所述通过shell命令和Instrumentation框架模拟用户的操作事件之前,所述方法包括:
通过创建的用户界面UI获取用户需要监测的性能,其中所述性能包括流畅度、响应时间及启动时间中的至少一项;
所述性能为流畅度,所述反馈信息包括LCD队列缓冲区更新的帧率以及图形处理器GPU绘制每帧画面的时间,
所述将所述反馈信息转换成用户可识别的性能数据,包括:
根据所述LCD队列缓冲区更新的帧率以及GPU绘制每帧画面的时间得到当前显示的帧率;
所述性能为应用启动时间,所述反馈信息包括用户触控屏幕时间、意图解析时间、应用进程启动时间以及界面显示时间,
所述将所述反馈信息转换成用户可识别的性能数据,包括:
选取应用进程启动时间和界面显示时间作为所述应用启动时间。
2.一种自动监测终端性能的系统,其特征在于,所述系统包括处理器以及与所述处理器连接的收发器,所述处理器用于通过shell命令和Instrumentation框架模拟用户的操作事件,所述收发器用于获取执行所述操作事件时输入输出系统的反馈信息,所述处理器进一步用于将所述反馈信息转换成用户可识别的性能数据;
在通过shell命令和Instrumentation框架模拟用户的操作事件之前,所述处理器还用于创建用户界面UI并通过所述UI获取用户需要监测的性能,其中所述性能包括流畅度、响应时间及启动时间中的至少一项;
所述性能为流畅度,所述收发器获取的反馈信息包括LCD队列缓冲区更新的帧率及图形处理器GPU绘制每帧画面的时间,所述处理器用于根据所述LCD队列缓冲区更新的帧率及GPU绘制每帧画面的时间得到当前需要显示的帧率;
所述性能为应用启动时间,所述收发器获取的反馈信息包括用户触控屏幕时间、意图解析时间、应用进程启动时间以及界面显示时间,所述处理器用于将应用进程启动时间以及界面显示时间作为所述应用启动时间。
3.一种存储装置,其特征在于,所述存储装置存储有程序数据,所述程序数据能够被处理器执行以实现权利要求1所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710611431.5A CN107391354B (zh) | 2017-07-25 | 2017-07-25 | 自动监测终端性能的方法及系统、存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710611431.5A CN107391354B (zh) | 2017-07-25 | 2017-07-25 | 自动监测终端性能的方法及系统、存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107391354A CN107391354A (zh) | 2017-11-24 |
CN107391354B true CN107391354B (zh) | 2020-11-13 |
Family
ID=60336841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710611431.5A Active CN107391354B (zh) | 2017-07-25 | 2017-07-25 | 自动监测终端性能的方法及系统、存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107391354B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113127282A (zh) * | 2021-04-23 | 2021-07-16 | 北京字节跳动网络技术有限公司 | 一种帧能力确定方法、装置、电子设备和存储介质 |
CN113360353B (zh) * | 2021-05-08 | 2023-01-06 | 山东英信计算机技术有限公司 | 一种测试服务器和云平台 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6751583B1 (en) * | 1999-10-29 | 2004-06-15 | Vast Systems Technology Corporation | Hardware and software co-simulation including simulating a target processor using binary translation |
CN104933174A (zh) * | 2015-07-01 | 2015-09-23 | 北京博睿宏远科技发展有限公司 | 基于控件自动化遍历解决手机app机型适配问题的方法 |
-
2017
- 2017-07-25 CN CN201710611431.5A patent/CN107391354B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6751583B1 (en) * | 1999-10-29 | 2004-06-15 | Vast Systems Technology Corporation | Hardware and software co-simulation including simulating a target processor using binary translation |
CN104933174A (zh) * | 2015-07-01 | 2015-09-23 | 北京博睿宏远科技发展有限公司 | 基于控件自动化遍历解决手机app机型适配问题的方法 |
Non-Patent Citations (1)
Title |
---|
Android应用软件自动化测试平台的设计和实现;祝阳阳;《中国优秀硕士学位论文全文数据库信息科技辑》;20170315;第I138-1082页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107391354A (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9990209B2 (en) | Digital assistance device for facilitating multi-stage setup | |
CN101957793B (zh) | 一种面向Android及其衍生系统的软件操作录制回放方法 | |
US9898396B2 (en) | Automated software testing and validation via graphical user interface | |
CN107688529B (zh) | 组件调试方法和装置 | |
WO2014169565A1 (zh) | 终端的测试方法及装置 | |
US11934175B2 (en) | Robotic process automation for remote assistance | |
CN105120483B (zh) | 智能卡与移动终端兼容性的自动化测试方法及系统 | |
CN109873735B (zh) | H5页面的性能测试方法、装置和计算机设备 | |
CN110716853A (zh) | 一种测试脚本录制方法、应用程序测试方法和相关装置 | |
US20140258989A1 (en) | Method and system for automating a scene-based test | |
WO2019227708A1 (zh) | 测试案例的在线调试装置、方法及计算机可读存储介质 | |
CN107045475B (zh) | 测试方法和装置 | |
CN105975367B (zh) | 移动设备的测试方法和装置 | |
CN109308241A (zh) | 监听应用程序启动流程方法、装置、终端设备和存储介质 | |
CN111611121A (zh) | 硬件模拟测试方法、装置及设备 | |
CN110275704A (zh) | 页面数据处理方法和装置,存储介质和电子设备 | |
WO2023098732A1 (zh) | 跨设备的交互方法、装置、电子设备以及存储介质 | |
CN107391354B (zh) | 自动监测终端性能的方法及系统、存储装置 | |
CN107102937B (zh) | 一种用户界面测试方法和装置 | |
CN106557411B (zh) | Android系统中Hybrid应用的测试方法及系统 | |
CN111427776A (zh) | 一种智能设备自动化测试方法及装置 | |
CN104239202A (zh) | 交互式智能设备的非Root测试方法和系统 | |
CN112241356A (zh) | 一种页面测试方法、装置、设备及存储介质 | |
CN115391204A (zh) | 自动驾驶服务的测试方法、装置、电子设备及存储介质 | |
CN104461904A (zh) | 移动终端的测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |