CN109800123A - 自动化电量测试方法、装置、计算机设备及存储介质 - Google Patents
自动化电量测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109800123A CN109800123A CN201811536986.9A CN201811536986A CN109800123A CN 109800123 A CN109800123 A CN 109800123A CN 201811536986 A CN201811536986 A CN 201811536986A CN 109800123 A CN109800123 A CN 109800123A
- Authority
- CN
- China
- Prior art keywords
- electric quantity
- function
- measured
- execution
- usage
- 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.)
- Pending
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Telephone Function (AREA)
Abstract
本发明公开一种自动化电量测试方法、装置、计算机设备及存储介质,该自动化电量测试方法包括:获取自动化测试请求,所述自动化测试请求包括设备标识;对自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令;对与所述设备标识相对应的待测移动设备中的待测应用程序执行所述目标测试命令,以使所述待测移动设备生成电量日志文件。执行日志获取脚本中的命令行,从所述待测移动设备中获取所述电量日志文件;采用电量分析工具对所述电量日志文件进行分析,获取与所述设备标识相对应的目标电量测试报告。该自动化电量测试方法可有效提高电量测试的效率且降低人力成本。
Description
技术领域
本发明涉及自动化测试领域,尤其涉及一种自动化电量测试方法、装置、计算机设备及存储介质。
背景技术
随着移动设备的性能越来越强,在电池技术没有突破性进展的基础下,wifi覆盖区域增加以及无线WIFI流量的网卡不断推出,使电池的耗电量逐渐被用户所关注。当前手机或者其他终端上的应用程序的耗电量测试过程,由于耗电量测试需要不断对应用程序进行操作,才可进行耗电量的测试,因此需要人工不断操作应用程序,耗费时间较长且人工成本较高。
发明内容
本发明实施例提供一种自动化电量测试方法、装置、计算机设备及存储介质,以解决当前应用程序的耗电量测试时,需要人工操作应用程序,耗费时间较长且人工成本较高的问题。
一种自动化电量测试方法,包括:
获取自动化测试请求,所述自动化测试请求包括设备标识;
对自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令;
对与所述设备标识相对应的待测移动设备中的待测应用程序执行所述目标测试命令,以使所述待测移动设备生成电量日志文件。
执行日志获取脚本中的命令行,从所述待测移动设备中获取所述电量日志文件;
采用电量分析工具对所述电量日志文件进行分析,获取与所述设备标识相对应的目标电量测试报告。
一种自动化电量测试装置,包括:
自动化测试请求获取模块,用于获取自动化测试请求,所述自动化测试请求包括设备标识;
目标测试命令配置模块,用于对自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令;
目标测试命令执行模块,用于对与所述设备标识相对应的待测移动设备中的待测应用程序执行所述目标测试命令,以使所述待测移动设备生成电量日志文件。
电量日志文件获取模块,用于执行日志获取脚本中的命令行,从所述待测移动设备中获取所述电量日志文件;
目标电量测试报告获取模块,用于采用电量分析工具对所述电量日志文件进行分析,获取与所述设备标识相对应的目标电量测试报告。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述自动化电量测试方法的步骤。
一种非易失性存储介质,所述非易失性存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述自动化电量测试方法的步骤。
上述自动化电量测试方法、装置、计算机设备及存储介质中,通过获取自动化测试请求,然后对自动化测试工具中的执行动作、与执行动作相对应的执行动作比例和操作次数进行配置,以获取目标测试命令,通过目标测试命令来模拟人的操作,可以保持手机处于解锁状态。接着,对与设备标识相对应的待测移动设备中的待测应用程序执行目标测试命令,以使待测移动设备生成电量日志文件,该过程无需人工手动操作待测移动设备即可自动进行电量测试,减轻人工负担,降低人力成本。之后,执行日志获取脚本中的命令行,从待测移动设备中获取电量日志文件,无需人工干预,实现自动化测试的目的。最后,采用电量分析工具对电量日志文件进行分析,获取与设备标识对应的目标电量测试报告,以实现自动化生成目标电量测试报告,无需手动干预,提高测试效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中自动化电量测试方法的一应用环境示意图;
图2是本发明一实施例中自动化电量测试方法的一流程图;
图3是图2中步骤S20的一具体流程图;
图4是图3中步骤S22的一具体流程图;
图5是本发明一实施例中自动化电量测试方法的另一流程图;
图6是本发明一实施例中自动化电量测试装置的一示意图;
图7是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的自动化电量测试方法,该自动化电量测试方法可应用计算机设备或待测移动设备上,下面以应用在计算机设备为例进行说明,用于实现自动对待测移动设备进行电量测试,提高测试效率,以节省人工测试成本和测试时间。可应用在如图1的应用环境中,其中,计算机设备通过网络与服务器进行通信。计算机设备可以但不限于各种个人计算机、笔记本智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器来实现。
在一实施例中,如图2所示,提供一种自动化电量测试方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S10:获取自动化测试请求,自动化测试请求包括设备标识。
其中,自动化测试请求是用于触发服务器对待测移动设备进行电量测试的请求。设备标识是用于识别待测移动设备的唯一标识。每一设备标识对应一待测移动设备。需说明,在进行测试之前需要在PC端(即电脑)或待测移动设备中安装adb环境,并将待测移动设备的模式设置为开发者模式,本实施例中需要在PC端(即电脑)上安装adb环境。adb(即Android Debug Bridge,安卓平台调试桥),它是Android提供的一个通用的调试工具,借助这个工具可以很好的调试开发程序。具体地,测试人员可将待测移动设备与服务器对应的计算机设备连接,以使服务器获取并响应自动化测试请求。
进一步地,该自动化测试请求可包括N个设备标识,即可将多个待测移动设备同时连接到同一PC端,并按照设备标识对每一设备标识对应的待测移动设备进行测试。可理解地,本实施例中的计算机设备和待测移动设备之间包括但不限于通过数据线、无线WIFI和蓝牙进行连接。
进一步地,在步骤S10之前,该自动化电量测试方法还包括:先采用命令语句清除历史电量数据,以排除历史电量数据的干扰,保证后续自动化电量测试的准确性。其中,清除历史电量数据的命令语句为adb shell dumpsys batterystats-reset。Dumpsys是计算机中用于对用户***诊断的语句,它运行在计算机设备上,并提供***服务状态信息,它的命令格式为adb shell dumpsys[system serbices]。batterystats表示电池状态信息。-reset表示清除操作。在清除历史电量数据前,还可对历史电量数据进行备份作为他用,具体可采用如下语句进行备份,adb shell dumpsys batterystats--enable full-wake-history。
S20:对自动化测试工具中的执行动作、与执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令。
其中,自动化测试工具包括但不限于采用Monkey工具,Monkey是一款通过命令行来对应用程序进行测试的工具,可以运行在模拟器或真机上,它向***发送伪随机的用户事件流,模拟用户操作以实现对应用程序进行压力测试。目标测试命令是指根据配置好的自动化测试工具对应用程序进行测试的monkey命令。操作总次数是指操作应用程序的总次数。执行动作比例是指执行动作的操作次数与操作总次数的比值。本实施例中,执行动作包括但不限于点击、滑动、简单的手势操作、触摸屏幕以及调用指定***事件,如打电话、返回手机主页继续点击和操作应用程序的导航(如首页)等。
具体地,由于应用程序的操作是遵循二八原则的,在任何一组事件中,最重要的只占其中一小部分,约20%,其余80%尽管是多数,却是次要的,因此又称二八定律。以微信为例,用户在使用首页聊天和朋友圈的比例,远高于使用设置页面和上传头像的比例,因此在操作应用程序时,会大部分执行动作比例放在点击应用程序的首页聊天和朋友圈上,而将较少执行动作比例放在一些路径较深的页面。本实施例中可通过增加点击导航栏次数,保证执行动作都在首页的功能,以实现二八定律,使得应用程序的耗电量检测的结果更切合用户的实际操作,提高应用程序耗电量检测的准确率。
S30:对与设备标识相对应的待测移动设备中的待测应用程序执行目标测试命令,以使待测移动设备生成电量日志文件。
其中,待测移动设备是指将要进行耗电量测试的移动设备。可理解地,该待测移动设备中包括一个或多个待测应用程序。需说明,本实施例中主要是针对每一待测应用程序的耗电量进行测试。电量日志文件是指服务器通过执行目标测试命令,以模拟用户操作待测应用程序,使得待测移动设备生成的记录电量消耗信息的日志文件。
具体地,通过步骤S20中对momkey工具中的操作总次数和执行动作比例确定目标测试命令,以便服务器基于目标测试命令中的操作次数(如10万次)和执行动作比例随机执行动作(如点击或滑动),而不是按照预先设定好的每一步执行动作进行测试,节省人力,提高效率,且按照执行动作比例随机采用任意执行动作操作应用程序,增强随机性,以使monkey工具模拟用户操作应用程序时更符合实际操作,提高电量测试的准确率。
通过执行目标测试命令,模拟用户操作(如点击或滑动等),以使待测移动设备能够始终保持解锁状态,以便对单位时间内应用程序的耗电量进行检测,无需人工解锁待测移动设备,节省人工成本。可理解,只有待测移动设备在解锁的状态下才可累积耗电量,并对待测应用程序进行电量测试。
S40:执行日志获取脚本中的命令行,从待测移动设备中获取电量日志文件。
其中,日志获取脚本是开发人员预先编辑好的拉取待测移动设备中电量日志(bugreport)文件的脚本。该日志获取脚本是预先设置的脚本,可多次执行,无需人工干预,降低人工成本。例如,服务器可采用如下命令语句adb bugreport/Users/chengxuefeng/bugreport.zip这一日志获取脚本中的命令行,获取手机这一待测移动设备中的bugreport文件(即电量日志文件)。需说明,从Android 7.0和更高版本的待测移动设备中获得电量日志文件时,采用上述命令语句获取。相应地,从Android 6.0和更低版本的待测移动设备中获得电量日志文件时,采用如下语句adb bugreport>存放的计算机设备的地址/bugreport.txt这一日志获取脚本中的命令行,并执行该命令行,以从待测移动设备中获取电量日志文件,无需人工干预,实现自动化测试的目的。
S50:采用电量分析工具对电量日志文件进行分析,获取与设备标识相对应的目标电量测试报告。
其中,电量分析工具包括但不限于Batterry historia工具,Batterry historia工具是一款由Google提供的Android***电量分析工具,Battery Historian可以可视化分析相关指标(如耗电比例、Wifi、蜂窝数据量、WakeLock唤醒次数)等。服务器采用BatteryHistorian工具对电量日志文件进行分析时,可以方便的看到各耗电模块随时间的耗电情况(包含操作类型、执行时间和与设备标识对应的待测应用程序等)。其中,耗电模块包括Network Information(数据传输)、WakeLock(唤醒锁)、Process info(进程信息)、Scheduled Job(任务触发)、Sensor Use(传感器使用)和GPS等,可查看每一个耗电模块的总结,直观的看到每一耗电模块的执行日期以及执行次数,当发现异常的时候可以针对性的进行排查。可以理解地,这里的耗电模块具体为待测移动设备上安装的每一待测应用程序。
具体地,服务器将待测移动设备中获取的电量日志文件上传到电量分析工具中进行分析,获取电量分析工具得出的原始电量测试报告,由于原始电量测试报告中的内容较多,某些内容并不是所需要的,因此,本实施例中,还可采用python工具中封装的关键字解析方法按照预设关键字爬取电量测试报告中所需的内容,以获取与设备标识对应的目标电量测试报告。由于Android***上应用程序的电量消耗主要包括CPU、Wakelock(唤醒锁)、数据传输(流量和wifi)和GPS等指标。因此,可将上述指标作为预设关键字爬取电量测试报告中所需的内容,以获取目标电量测试报告,以便用户快速查看报告中所需内容,提高自动化电量测试的实用性。
本实施例中,通过获取自动化测试请求,然后对自动化测试工具中的执行动作、执行动作比例和操作次数进行配置,以获取目标测试命令,通过目标测试命令来模拟人的操作,以保持待测移动设备始终处于解锁状态,以实现自动化电量测试,节省测试成本和时间。接着,对与设备标识相对应的待测移动设备中的待测应用程序执行目标测试命令,无需人工手动操作待测移动设备即可进行电量测试,提高测试效率,减轻人工负担,降低人力成本。最后,采用电量分析工具对电量日志文件进行分析,获取与设备标识对应的目标电量测试报告,以实现自动化生成目标电量测试报告,无需手动干预,提高测试报告获取效率。
在一实施例中,自动化测试工具对应一测试命令框架;如图3所示,步骤S20中,即对自动化测试工具中的执行动作比例和操作总次数进行配置,获取目标测试命令,具体包括如下步骤:
S21:对待测移动设备上的待测应用程序中的每一功能进行埋点设置,使每一功能被触发时,每一功能对应的埋点获取对应的功能访问信息,每一埋点对应一埋点ID。
具体地,预先对每一个功能进行埋点设置,以获取携带埋点的功能。其中,埋点是指开发人员在前端代码中加入的统计代码,每一埋点对应一埋点ID,当用户操作某一功能时,就会触发该段统计代码采集功能访问信息。本实施例中,每一埋点ID对应一统计代码。通过携带埋点ID的功能,以使服务器能够基于用户所点击的功能,记录到访问日志中,进而获取功能访问信息。
目前常见的操作埋点技术包括但不限于代码埋点,即在某个控件操作发生时通过预先写好的代码以发送数据至后台并写入访问日志。具体地,在APP或者界面初始化的时候,初始化第三方数据分析服务商的SDK(又称前端数据采集),然后在某个事件发生时就调用SDK里面相应的数据发送接口以发送数据。例如,要统计APP里面某个功能按钮的点击次数,则在APP的某个功能按钮被点击时,可以在这个按钮对应的OnClick函数里面调用SDK提供的数据发送接口以发送数据至后台并写入访问日志以获取功能访问信息,如用户点击登录按钮,前端会上报该登录按钮的埋点数据至后台,并记录用户点击登录按钮的事件,以获取功能访问信息。其中,OnClick函数会在对象(即功能)被点击时发生。
S22:统计至少一个埋点ID对应的功能访问信息,获取每一埋点ID对应的功能使用频次,将功能使用频次进行累加,获取总使用频次。
其中,功能使用频次是指用户在一段时间内用户使用应用程序中任一功能的频次。功能使用频次是一个可以较好地反映用户使用该应用程序的使用习惯的指标。总使用频次使指用户在一段时间内使用应用程序中所有功能的使用频次的和。具体地,通过读取访问日志以获取至少一个埋点ID对应的功能访问信息,通过统计每一埋点ID对应的功能访问信息,以获取每一埋点对应的功能使用频次,并将功能使用频次进行累加,以获取总使用频次,为后续个性化配置自动化测试工具提供数据来源。
S23:基于埋点ID、功能使用频次和总使用频次,按照测试命令框架配置自动化测试工具中的执行动作、与执行动作相对应的执行动作比例和操作总次数,获取目标测试命令。
其中,测试命令框架是自动化测试工具(即monkey测试工具)对应的命令框架。该测试命令框架中包括执行动作、执行动作比例和操作总次数。示例性的,可采用如下测试命令框架进行配置:
adb shell monkey --pct-nav 30 --pct-appswitch 70 --throttle 2000 --ignore-timeouts 2000 -v 100000。
其中,-v//指定时间操作次数
--pct-nav 30//30%(执行动作比例)对应的执行动作为点击导航
--pct-appswitch 70//70%(执行动作比例)对应的执行动作为全部页面
--throttle 5000//操作之间停留5s,让应用程序去加载
--ignore-timeouts 2000(ms)//如果页面异常,等待2s,操作继续。
具体地,基于埋点ID、功能使用频次和总使用频个性化配置momkey工具(自动化测试工具)中的执行动作、执行动作比例和操作总次数,获取每一待测应用程序对应的目标测试命令,以实现个性化配置每一待测应用程序对应的电量测试执行动作比例,使得电量测试更加贴合实际,进一步提高电量测试的准确率。
在一实施例中,步骤S23具体为:采用比例配置公式对功能使用频次和总使用频次进行计算,获取每一埋点ID对应的使用比例,将每一埋点ID对应的的使用比例作为执行动作比例,埋点ID对应的功能作为执行动作,总使用频次作为操作总次数,将执行动作、执行动作比例和操作总次数填充到测试命令框架中,获取目标测试命令。
其中,比例配置公式具体为其中,N为每一功能对应的功能使用频次,M为总使用频次(每一功能所对应的功能使用频次加和),P为每一埋点ID对应的使用比例。具体地,服务器采用比例配置公式对功能使用频次和总使用频次进行计算,获取每一功能的使用比例,将每一功能的使用比例作为执行动作比例,将总使用频次作为操作总次数,将埋点ID对应的功能作为执行动作。最后,将执行动作、执行动作比例和操作总次数填充到测试命令框架中,获取目标测试命令,使得目标测试命令的执行更加符合每一用户的实际操作,提高电量测试的准确率。
本实施例中,对待测移动设备上的待测应用程序中的每一功能进行埋点设置,使每一功能被触发时,每一功能对应的埋点获取对应的功能访问信息,有助于使每一埋点对应功能的功能使用频次可以较准确地反映用户的操作习惯。然后,统计至少一个埋点ID对应的功能访问信息,获取每一埋点ID对应的功能使用频次,将功能使用频次进行累加,获取总使用频次,以便基于功能使用频次和总使用频次,个性化配置自动化测试工具中的执行动作比例和操作总次数,获取目标测试命令,使得目标测试命令的执行更加符合用户的实际操作,提高电量测试的准确率。
在一实施例中,如图4所示,步骤S22中,即统计至少一个埋点ID对应的功能访问信息,获取每一埋点ID对应的功能使用频次,具体包括如下步骤:
S221:获取信息统计请求,信息统计请求包括预设统计区间或历史统计区间。
其中,信息统计请求是用于触发服务器统计埋点ID对应的功能访问信息的请求。历史统计时间是服务器默认采用的统计时间。预设统计区间使用户自定义选择的时间区间。该预设统计时间可由应用活跃度来确定的,活跃度越高其预设统计时间越短,活跃度越低其预设统计时间越长。可以理解地,若用户使用应用程序的时间越长,证明该用户的活跃度越高,可以只统计较短时间内的功能访问信息,即可获取每一埋点对应的功能的功能使用频次。
S222:基于预设统计区间或历史统计区间,对至少一个埋点ID对应的功能访问信息进行统计,获取每一埋点ID对应的功能使用频次。
具体地,本实施例中基于预设统计区间或历史统计区间,对至少一个埋点ID对应的功能访问信息进行统计,以获取每一埋点ID对应的功能使用频次,以提高信息统计的灵活性。可理解地,通过预设统计区间进行统计,统计时间短,但由于数据量较少因此不能较好的反映用户的行为习惯。而通过历史统计区间进行统计由于数据量较大,因此可较好的反映用户的行为习惯,但统计时间较长。
本实施例中,通过获取信息统计请求,以便根据信息统计请求中的预设统计区间或历史统计区间,对至少一个埋点ID对应的功能访问信息进行统计,获取每一埋点ID对应的功能使用频次,以提高信息统计的灵活性。
在一实施例中,如图5所示,步骤S10之前,该自动化电量测试方法还包括如下步骤:
S61:获取定时检测指令,定时检测指令包括定时检测时间和设备标识。
其中,定时检测指令是用于触发服务器对待测移动设备进行检测是指令。定时检测时间是指用户设置的用于定时检测待测移动设备耗电情况的时间(如:每半小时一次)。设备标识是用于识别待测移动设备的唯一标识,与步骤S10中的设备标识相同。具体地,本实施例中包括一定时任务,用于定时检测待测移动设备,用户可在定时任务中设置定时检测时间和设备标识,以便服务器根据定时任务的设置,定时对待测移动设备耗电情况进行检测。
S62:若***当前时间为定时检测时间,则采用自动解锁工具对设备标识对应的待测移动设备进行自动解锁。
具体地,PC端可通过数据线、无线WIFI和蓝牙等连接待测移动设备,当***当前时间为定时检测时间时,则服务器采用自动解锁工具,以模拟人的手指来滑动屏幕,实现自动解锁待测移动设备。该自动解锁工具包括但不限于采用appium工具。本案中,可采用如下语句进行自动解锁:
touchAction.press(beginX,beginY).moveTo(xStep,yStep).moveTo(xStep,yStep).release().perform();//按下屏幕的某个像素点,移动到某个像素点,再移动到某个像素点,停止按屏幕。
具体地,用户可在appium工具设置解锁手势,以便定时检测时,服务器基于用户设置的手势进行解锁并执行步骤S10-S50。appium工具是一个自动化测试开源工具,支持ios平台和Android平台上的原生应用、web应用和混合应用,能够在设备上自动执行指定操作,实现自动化测试。需说明,本实施例是基于Android***的自动化电量测试。
进一步地,在定时检测完成后,并执行步骤S10-S50所获取的目标电量测试报告发送到预先设置的指定邮箱中。
本实施例中,服务器通过获取定时检测指令,当***当前时间为定时检测时间时,采用自动解锁工具对设备标识对应的待测移动设备进行自动解锁,并执行步骤S10-S50,以实现定时对待测移动设备进行自动化电量测试的目的,通过自动解锁,以实现测试流程全自动化,无需手动解锁,极大地提高自动化电量测试的效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种自动化电量测试装置,该自动化电量测试装置与上述实施例中自动化电量测试方法一一对应。如图6所示,该自动化电量测试装置包括自动化测试请求获取模块10、目标测试命令配置模块20、目标测试命令执行模块30、电量日志文件获取模块40和目标电量测试报告获取模块50。各功能模块详细说明如下:
自动化测试请求获取模块10,用于获取自动化测试请求,自动化测试请求包括设备标识。
目标测试命令配置模块20,用于对自动化测试工具中的执行动作、与执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令。
目标测试命令执行模块30,用于对与设备标识相对应的待测移动设备中的待测应用程序执行目标测试命令,以使待测移动设备生成电量日志文件。
电量日志文件获取模块40,用于执行日志获取脚本中的命令行,从待测移动设备中获取电量日志文件。
目标电量测试报告获取模块50,用于采用电量分析工具对电量日志文件进行分析,获取与设备标识相对应的目标电量测试报告。
具体地,自动化测试工具对应一测试命令框架;目标测试命令配置模块20包括埋点设置单元21、功能访问信息统计单元22和目标测试命令配置单元23。
埋点设置单元21,用于对待测移动设备上的待测应用程序中的每一功能进行埋点设置,使每一功能被触发时,每一功能对应的埋点获取对应的功能访问信息,每一埋点对应一埋点ID。
功能访问信息统计单元22,用于统计至少一个埋点ID对应的功能访问信息,获取每一埋点ID对应的功能使用频次,将功能使用频次进行累加,获取总使用频次。
目标测试命令配置单元23,用于基于埋点ID、功能使用频次和总使用频次,按照测试命令框架配置自动化测试工具中的执行动作、与执行动作相对应的执行动作比例和操作总次数,获取目标测试命令。
具体地,功能访问信息统计单元22包括信息统计请求获取子单元221和功能访问信息统计子单元222。
信息统计请求获取子单元221,用于获取信息统计请求,信息统计请求包括预设统计区间或历史统计区间。
功能访问信息统计子单元222,用于基于预设统计区间或历史统计区间,对至少一个埋点ID对应的功能访问信息进行统计,获取每一埋点ID对应的功能使用频次。
具体地,目标测试命令配置单元具体为:采用比例配置公式对功能使用频次和总使用频次进行计算,获取每一埋点ID对应的使用比例,将每一埋点ID对应的的使用比例作为执行动作比例,埋点ID对应的功能作为执行动作,总使用频次作为操作总次数,将执行动作、执行动作比例和操作总次数填充到测试命令框架中,获取目标测试命令。
具体地,该自动化电量测试装置还包括定时检测指令获取单元和待测移动设备解锁单元。
定时检测指令获取单元,用于获取定时检测指令,定时检测指令包括定时检测时间和设备标识。
待测移动设备解锁单元,用于若***当前时间为定时检测时间,则采用自动解锁工具对设备标识对应的待测移动设备进行自动解锁。
关于自动化电量测试装置的具体限定可以参见上文中对于自动化电量测试方法的限定,在此不再赘述。上述自动化电量测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行自动化电量测试方法过程中生成或获取的数据,如目标电量测试报告。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种自动化电量测试方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的自动化电量测试方法的步骤,例如图2所示的步骤S10-S50,或者图3至图5中所示的步骤。或者,处理器执行计算机程序时实现自动化电量测试方法装置这一实施例中的各模块/单元的功能,例如图6所示的各模块/单元的功能,为避免重复,这里不再赘述。
在一实施例中,提供一非易失性存储介质,该非易失性存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中用户帐号解锁方法的步骤,例如图2所示的步骤S10-S50,或者图3至图5中所示的步骤,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述自动化电量测试方法装置这一实施例中的各模块/单元的功能,例如图6所示的各模块/单元的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种自动化电量测试方法,其特征在于,包括:
获取自动化测试请求,所述自动化测试请求包括设备标识;
对自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令;
对与所述设备标识相对应的待测移动设备中的待测应用程序执行所述目标测试命令,以使所述待测移动设备生成电量日志文件;
执行日志获取脚本中的命令行,从所述待测移动设备中获取所述电量日志文件;
采用电量分析工具对所述电量日志文件进行分析,获取与所述设备标识相对应的目标电量测试报告。
2.如权利要求1所述的自动化电量测试方法,其特征在于,所述自动化测试工具对应一测试命令框架;
所述对自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数进行配置,获取目标测试命令,包括:
对所述待测移动设备上的所述待测应用程序中的每一功能进行埋点设置,使每一所述功能被触发时,每一所述功能对应的埋点获取对应的功能访问信息,每一埋点对应一埋点ID;
统计至少一个所述埋点ID对应的功能访问信息,获取每一所述埋点ID对应的功能使用频次,将所述功能使用频次进行累加,获取总使用频次;
基于所述埋点ID、所述功能使用频次和所述总使用频次,按照所述测试命令框架配置所述自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数,获取所述目标测试命令。
3.如权利要求2所述的自动化电量测试方法,其特征在于,所述统计至少一个所述埋点ID对应的功能访问信息,获取每一所述埋点ID对应的功能使用频次,包括:
获取信息统计请求,所述信息统计请求包括预设统计区间或历史统计区间;
基于所述预设统计区间或所述历史统计区间,对至少一个所述埋点ID对应的功能访问信息进行统计,获取每一所述埋点ID对应的功能使用频次。
4.如权利要求3所述的自动化电量测试方法,其特征在于,所述基于所述埋点ID、所述功能使用频次和所述总使用频次,按照所述测试命令框架配置所述自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数,获取所述目标测试命令,包括:
采用比例配置公式对所述功能使用频次和所述总使用频次进行计算,获取每一所述埋点ID对应的使用比例,将每一所述埋点ID对应的的使用比例作为所述执行动作比例,所述埋点ID对应的功能作为所述执行动作,所述总使用频次作为所述操作总次数,将所述执行动作、所述执行动作比例和所述操作总次数填充到所述测试命令框架中,获取所述目标测试命令。
5.如权利要求1所述的自动化电量测试方法,其特征在于,在获取自动化测试请求的步骤之前,所述自动化电量测试方法还包括:
获取定时检测指令,所述定时检测指令包括定时检测时间和设备标识;
若***当前时间为所述定时检测时间,则采用自动解锁工具对所述设备标识对应的待测移动设备进行自动解锁。
6.一种自动化电量测试装置,其特征在于,包括:
自动化测试请求获取模块,用于获取自动化测试请求,所述自动化测试请求包括设备标识;
目标测试命令配置模块,用于对自动化测试工具中的执行动作、与所述执行动作相对应的和操作总次数进行配置,获取目标测试命令;
目标测试命令执行模块,用于对与所述设备标识相对应的待测移动设备中的待测应用程序执行所述目标测试命令,以使所述待测移动设备生成电量日志文件;
电量日志文件获取模块,用于执行日志获取脚本中的命令行,从所述待测移动设备中获取所述电量日志文件;
目标电量测试报告获取模块,用于采用电量分析工具对所述电量日志文件进行分析,获取与所述设备标识相对应的目标电量测试报告。
7.如权利要求6所述的自动化电量测试装置,其特征在于,所述目标测试命令配置模块包括:
埋点设置单元,用于对所述待测移动设备上的所述待测应用程序中的每一功能进行埋点设置,使每一所述功能被触发时,每一所述功能对应的埋点获取对应的功能访问信息,每一埋点对应一埋点ID;
功能访问信息统计单元,用于统计至少一个所述埋点ID对应的功能访问信息,获取每一所述埋点ID对应的功能使用频次,将所述功能使用频次进行累加,获取总使用频次;
目标测试命令配置单元,用于基于埋点ID、所述功能使用频次和所述总使用频次,配置所述自动化测试工具中的执行动作、与所述执行动作相对应的执行动作比例和操作总次数,获取所述目标测试命令。
8.如权利要求7所述的自动化电量测试装置,其特征在于,所述功能访问信息统计单元包括:
信息统计请求获取子单元,用于获取信息统计请求,所述信息统计请求包括预设统计区间或历史统计区间;
功能访问信息统计子单元,用于基于所述预设统计区间或所述历史统计区间,对至少一个所述埋点ID对应的功能访问信息进行统计,获取每一所述埋点ID对应的功能使用频次。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述自动化电量测试方法的步骤。
10.一种非易失性存储介质,所述非易失性存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述自动化电量测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811536986.9A CN109800123A (zh) | 2018-12-14 | 2018-12-14 | 自动化电量测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811536986.9A CN109800123A (zh) | 2018-12-14 | 2018-12-14 | 自动化电量测试方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109800123A true CN109800123A (zh) | 2019-05-24 |
Family
ID=66556819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811536986.9A Pending CN109800123A (zh) | 2018-12-14 | 2018-12-14 | 自动化电量测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109800123A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489342A (zh) * | 2019-07-31 | 2019-11-22 | 广州微算互联信息技术有限公司 | 一种安卓应用测试方法、***、装置及存储介质 |
CN111722993A (zh) * | 2020-06-16 | 2020-09-29 | 广东小天才科技有限公司 | 通信终端异常耗电监控方法、***、终端设备及存储介质 |
CN111813648A (zh) * | 2019-06-03 | 2020-10-23 | 北京嘀嘀无限科技发展有限公司 | 一种应用于App的自动化测试方法、装置、存储介质及电子设备 |
CN112799958A (zh) * | 2021-02-23 | 2021-05-14 | 长鑫存储技术有限公司 | 设备批量测试方法、装置、计算机设备及介质 |
CN113505079A (zh) * | 2021-07-27 | 2021-10-15 | 平安普惠企业管理有限公司 | 应用程序测试方法、装置、设备及介质 |
CN114338489A (zh) * | 2021-12-29 | 2022-04-12 | 深圳市捷视飞通科技股份有限公司 | 多媒体会议***自动化测试方法、装置、设备和存储介质 |
CN114676053A (zh) * | 2022-03-25 | 2022-06-28 | 深圳市凯迪仕智能科技有限公司 | 一种硬件设备的自动化分析方法及装置 |
CN115113089A (zh) * | 2022-06-30 | 2022-09-27 | 苏州浪潮智能科技有限公司 | 一种电量监测装置、电源及服务器 |
CN116541270A (zh) * | 2023-03-27 | 2023-08-04 | 深圳国家金融科技测评中心有限公司 | 一种操作***的适配验证测试方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512193A (zh) * | 2015-11-26 | 2016-04-20 | 上海携程商务有限公司 | 基于浏览器扩展的数据采集***及方法 |
WO2016188334A1 (zh) * | 2015-05-22 | 2016-12-01 | 阿里巴巴集团控股有限公司 | 一种用于处理应用访问数据的方法与设备 |
CN106294158A (zh) * | 2016-08-11 | 2017-01-04 | 北京小米移动软件有限公司 | 终端测试方法、装置及*** |
CN107145446A (zh) * | 2017-05-08 | 2017-09-08 | 网易有道信息技术(北京)有限公司 | 一种应用程序app的测试方法、装置和介质 |
CN108183952A (zh) * | 2017-12-28 | 2018-06-19 | 北京奇虎科技有限公司 | 一种基于云平台的应用耗电分析方法、设备及存储介质 |
CN108287790A (zh) * | 2017-12-29 | 2018-07-17 | 五八有限公司 | 终端的应用程序性能测试方法、装置及电子设备 |
CN108874810A (zh) * | 2017-05-10 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 信息采集的方法和装置 |
-
2018
- 2018-12-14 CN CN201811536986.9A patent/CN109800123A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016188334A1 (zh) * | 2015-05-22 | 2016-12-01 | 阿里巴巴集团控股有限公司 | 一种用于处理应用访问数据的方法与设备 |
CN105512193A (zh) * | 2015-11-26 | 2016-04-20 | 上海携程商务有限公司 | 基于浏览器扩展的数据采集***及方法 |
CN106294158A (zh) * | 2016-08-11 | 2017-01-04 | 北京小米移动软件有限公司 | 终端测试方法、装置及*** |
CN107145446A (zh) * | 2017-05-08 | 2017-09-08 | 网易有道信息技术(北京)有限公司 | 一种应用程序app的测试方法、装置和介质 |
CN108874810A (zh) * | 2017-05-10 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 信息采集的方法和装置 |
CN108183952A (zh) * | 2017-12-28 | 2018-06-19 | 北京奇虎科技有限公司 | 一种基于云平台的应用耗电分析方法、设备及存储介质 |
CN108287790A (zh) * | 2017-12-29 | 2018-07-17 | 五八有限公司 | 终端的应用程序性能测试方法、装置及电子设备 |
Non-Patent Citations (1)
Title |
---|
RAGNARO: "adb shell bugreport分析", 《HTTPS://BLOG.CSDN.NET/RAGNARO/ARTICLE/DETAILS/53024251?》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111813648A (zh) * | 2019-06-03 | 2020-10-23 | 北京嘀嘀无限科技发展有限公司 | 一种应用于App的自动化测试方法、装置、存储介质及电子设备 |
CN110489342A (zh) * | 2019-07-31 | 2019-11-22 | 广州微算互联信息技术有限公司 | 一种安卓应用测试方法、***、装置及存储介质 |
CN111722993A (zh) * | 2020-06-16 | 2020-09-29 | 广东小天才科技有限公司 | 通信终端异常耗电监控方法、***、终端设备及存储介质 |
CN112799958A (zh) * | 2021-02-23 | 2021-05-14 | 长鑫存储技术有限公司 | 设备批量测试方法、装置、计算机设备及介质 |
CN113505079A (zh) * | 2021-07-27 | 2021-10-15 | 平安普惠企业管理有限公司 | 应用程序测试方法、装置、设备及介质 |
CN114338489A (zh) * | 2021-12-29 | 2022-04-12 | 深圳市捷视飞通科技股份有限公司 | 多媒体会议***自动化测试方法、装置、设备和存储介质 |
CN114338489B (zh) * | 2021-12-29 | 2024-03-15 | 深圳市捷视飞通科技股份有限公司 | 多媒体会议***自动化测试方法、装置、设备和存储介质 |
CN114676053A (zh) * | 2022-03-25 | 2022-06-28 | 深圳市凯迪仕智能科技有限公司 | 一种硬件设备的自动化分析方法及装置 |
CN115113089A (zh) * | 2022-06-30 | 2022-09-27 | 苏州浪潮智能科技有限公司 | 一种电量监测装置、电源及服务器 |
CN116541270A (zh) * | 2023-03-27 | 2023-08-04 | 深圳国家金融科技测评中心有限公司 | 一种操作***的适配验证测试方法及装置 |
CN116541270B (zh) * | 2023-03-27 | 2024-01-02 | 深圳国家金融科技测评中心有限公司 | 一种操作***的适配验证测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109800123A (zh) | 自动化电量测试方法、装置、计算机设备及存储介质 | |
CN104407980B (zh) | 移动应用自动化测试装置和方法 | |
Sahin et al. | How does code obfuscation impact energy usage? | |
Hester et al. | The future of sensing is batteryless, intermittent, and awesome | |
Koroglu et al. | Qbe: Qlearning-based exploration of android applications | |
Corral et al. | Mobile multiplatform development: An experiment for performance analysis | |
Li et al. | Integrated energy-directed test suite optimization | |
Corral et al. | A method for characterizing energy consumption in Android smartphones | |
CN105144118A (zh) | 应用测试和分析 | |
Canfora et al. | A case study of automating user experience-oriented performance testing on smartphones | |
CN109491891A (zh) | 全自动接口压测方法、装置、计算机设备及存储介质 | |
RU2018110091A (ru) | Поэтапная консультация по оптимальному использованию устройства для бритья | |
CN107894889A (zh) | 埋点方法、设备及计算机可读存储介质 | |
CN105338110A (zh) | 远程调试方法和平台、服务器 | |
Furlong et al. | Realistic simulation for tiny batteryless sensors | |
CN105653438B (zh) | 安卓设备的跨进程自动化测试方法和装置 | |
CN109783365A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
CN108469975A (zh) | 控件显示方法、装置、计算机设备和存储介质 | |
CN1987820A (zh) | 用于跟踪现场可编程门阵列中的程序执行的方法和*** | |
CN105302706A (zh) | 应用程序测试方法和装置 | |
Wienke et al. | Development effort estimation in hpc | |
CN110471853A (zh) | App测试方法、装置、计算机设备及存储介质 | |
Ferrari et al. | Detecting energy leaks in android app with poem | |
CN109783366A (zh) | App版本升级兼容性测试方法、装置、设备及存储介质 | |
Lettner et al. | Usability evaluation framework: automated interface analysis for android applications |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190524 |
|
WD01 | Invention patent application deemed withdrawn after publication |