太阳城集团

  • / 15
  • 下载费用:30 金币  

一种跨进程测试的方法、装置及电子设备.pdf

摘要
申请专利号:

太阳城集团CN201611035713.7

申请日:

2016.11.18

公开号:

CN106776277A

公开日:

2017.05.31

当前法律状态:

撤回

有效性:

无权

法律详情: 发明专利申请公布后的视为撤回 IPC(主分类):G06F 11/36申请公布日:20170531|||实质审查的生效IPC(主分类):G06F 11/36申请日:20161118|||公开
IPC分类号: G06F11/36 主分类号: G06F11/36
申请人: 乐视控股(北京)有限公司; 乐视网太阳城集团技术(北京)股份有限公司
发明人: 鹿毅
地址: 100025 北京市朝阳区姚家园路105号3号楼10层1102
优先权:
专利代理机构: 北京中誉威圣知识产权代理有限公司 11279 代理人: 李晓康;王思超
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

太阳城集团CN201611035713.7

授权太阳城集团号:

||||||

法律状态太阳城集团日:

太阳城集团2019.03.05|||2017.06.23|||2017.05.31

法律状态类型:

太阳城集团发明专利申请公布后的视为撤回|||实质审查的生效|||公开

摘要

太阳城集团本发明公开了一种跨进程测试的方法、装置及电子设备,其中,该方法包括:获取基于instruments类工具封装的第一测试命令,第一测试命令包括模拟动作指令和与模拟动作指令对应的模拟动作参数;解析第一测试命令,将第一测试命令转换为用于调用非instruments类工具的第二测试命令,第二测试命令包括模拟动作指令和模拟动作参数;将第二测试命令发送至非instruments类工具,以使非instruments类工具解析第二测试命令,并根据模拟动作指令和模拟动作参数执行模拟操作。即该方法在保证测试稳定性的同时,可以实现跨进程测试。

权利要求书

1.一种跨进程测试的方法,其特征在于,包括:
获取基于instruments类工具封装的第一测试命令,所述第一测试命令包括模拟动作
指令和与所述模拟动作指令对应的模拟动作参数;
解析所述第一测试命令,将所述第一测试命令转换为用于调用非instruments类工具
的第二测试命令,所述第二测试命令包括所述模拟动作指令和所述模拟动作参数;
将所述第二测试命令发送至所述非instruments类工具,以使所述非instruments类工
具解析所述第二测试命令,并根据所述模拟动作指令和所述模拟动作参数执行模拟操作。
2.根据权利要求1所述的方法,其特征在于,所述获取基于instruments类工具封装的
第一测试命令,包括:
获取在instruments类工具中封装的初始测试命令,所述初始测试命令包括模拟动作
指令和与所述模拟动作指令对应的模拟动作参数;
将所述初始测试命令转换为JSON格式的第一测试命令。
3.根据权利要求1或2所述的方法,其特征在于,所述模拟动作参数包括坐标参数和/或
目标应用的元素标识;
在所述模拟动作参数包括坐标参数和目标应用的元素标识时,所述根据所述模拟动作
指令和所述模拟动作参数执行模拟操作具体包括:根据所述元素标识查找对应的控件元
素,获取所述控件元素的位置太阳城集团;
根据所述控件元素的位置太阳城集团和所述坐标参数,确定对所述控件元素的操作区域;
根据所述模拟动作指令,对所述控件元素在所述操作区域执行相应的模拟操作。
4.根据权利要求1或2所述的方法,其特征在于,所述将所述第一测试命令转换为用于
调用非instruments类工具的第二测试命令,包括:
根据所述第一测试命令生成jar包,并将所述jar包封装为第二测试命令。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一测试命令生成jar包包
括:
根据预设类型的命令将所述第一测试命令中的所述模拟动作指令和所述模拟动作参
数传递至jar包中。
6.一种跨进程测试的装置,其特征在于,包括:
获取模块,用于获取基于instruments类工具封装的第一测试命令,所述第一测试命令
包括模拟动作指令和与所述模拟动作指令对应的模拟动作参数;
转换模块,用于解析所述第一测试命令,并将所述第一测试命令转换为用于调用非
instruments类工具的第二测试命令,所述第二测试命令包括所述模拟动作指令和所述模
拟动作参数;
发送模块,用于将所述第二测试命令发送至所述非instruments类工具,以使所述非
instruments类工具解析所述第二测试命令,并根据所述模拟动作指令和所述模拟动作参
数执行相应的模拟操作。
7.根据权利要求6所述的装置,其特征在于,所述获取模块包括:
获取单元,用于获取在instruments类工具中封装的初始测试命令,所述初始测试命令
包括模拟动作指令和与所述模拟动作指令对应的模拟动作参数;
转换单元,用于将所述初始测试命令转换为JSON格式的第一测试命令。
8.根据权利要求6或7所述的装置,其特征在于,所述模拟动作参数包括坐标参数和/或
目标应用的元素标识;
在所述模拟动作参数包括坐标参数和目标应用的元素标识时,所述发送模块包括:
获取单元,用于根据所述元素标识查找对应的控件元素,获取所述控件元素的位置信
息;
确定单元,用于根据所述控件元素的位置太阳城集团和所述坐标参数,确定对所述控件元素
的操作区域;
处理单元,用于根据所述模拟动作指令,对所述控件元素在所述操作区域执行相应的
模拟操作。
9.根据权利要求6或7所述的装置,其特征在于,所述转换模块用于:根据所述第一测试
命令生成jar包,并将所述jar包封装为第二测试命令。
10.根据权利要求9所述的装置,其特征在于,所述转换模块用于:根据预设类型的命令
将所述第一测试命令中的所述模拟动作指令和所述模拟动作参数传递至jar包中。
11.一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处
理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。

说明书

一种跨进程测试的方法、装置及电子设备

技术领域

本发明涉及软件测试技术领域,特别涉及一种跨进程测试的方法、装置及电子设
备。

背景技术

当前安卓系统的自动化测试工具分为两大类,第一类是基于Instruments类的测
试工具,基于instruments框架可以控制和测试应用程序;第二类是非Instruments类的测
试工具。

现有技术中常用的是基于Instruments类的测试工具,例如工具Robotium,测试用
例与被测程序运行于同一进程中从而实现对被测应用进行操作、检测等。其中,Robotium是
一款Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供
了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行操
作。

基于此,本发明的发明人发现,基于Instruments类的测试工具稳定性较高,但是
只能对每个设备的应用程序一一进行测试,导致对于Android设备的测试场景比较局限,无
法实现对跨进程的事件注入的测试。例如进程A需要调用进程B,且进程A将点击事件注入进
程B;若利用基于Instruments类的测试工具进行测试,则不能测试上述的进程A将点击事件
注入进程B。

公开于该背景技术部分的太阳城集团仅仅旨在增加对本发明的总体背景的理解,而不应
当被视为承认或以任何形式暗示该太阳城集团构成已为本领域一般技术人员所公知的现有技术。

发明内容

本发明的目的在于提供一种跨进程测试的方法、装置及电子设备,从而克服
instruments类的测试工具不能实现跨进程测试的缺陷。

本发明实施例提供的一种跨进程测试的方法,包括:获取基于instruments类工具
封装的第一测试命令,第一测试命令包括模拟动作指令和与模拟动作指令对应的模拟动作
参数;解析第一测试命令,并将第一测试命令转换为用于调用非instruments类工具的第二
测试命令,第二测试命令包括模拟动作指令和模拟动作参数;将第二测试命令发送至非
instruments类工具,以使非instruments类工具解析第二测试命令,并根据模拟动作指令
和模拟动作参数执行模拟操作。

在一种可能的实现方式中,获取基于instruments类工具封装的第一测试命令,包
括:获取在instruments类工具中封装的初始测试命令,初始测试命令包括模拟动作指令和
与模拟动作指令对应的模拟动作参数;将初始测试命令转换为JSON格式的第一测试命令。

在一种可能的实现方式中,模拟动作参数包括坐标参数和/或目标应用的元素标
识;在模拟动作参数包括坐标参数和目标应用的元素标识时,根据模拟动作指令和模拟动
作参数执行模拟操作具体包括:根据元素标识查找对应的控件元素,获取控件元素的位置
太阳城集团;根据控件元素的位置太阳城集团和坐标参数,确定对控件元素的操作区域;根据模拟动作指
令,对控件元素在操作区域执行相应的模拟操作。

在一种可能的实现方式中,将第一测试命令转换为用于调用非instruments类工
具的第二测试命令,包括:根据第一测试命令生成jar包,并将jar包封装为第二测试命令。

在一种可能的实现方式中,根据第一测试命令生成jar包包括:根据预设类型的命
令将第一测试命令中的模拟动作指令和模拟动作参数传递至jar包中。

基于同样的发明构思,本发明实施例还提供一种跨进程测试的装置,包括:获取模
块,用于获取基于instruments类工具封装的第一测试命令,第一测试命令包括模拟动作指
令和与模拟动作指令对应的模拟动作参数;转换模块,用于解析第一测试命令,并将第一测
试命令转换为用于调用非instruments类工具的第二测试命令,第二测试命令包括模拟动
作指令和相对应的模拟动作参数;发送模块,用于将第二测试命令发送至非instruments类
工具,以使非instruments类工具解析第二测试命令,并根据模拟动作指令和模拟动作参数
执行相应的模拟操作。

在一种可能的实现方式中,获取模块包括:获取单元,用于获取在instruments类
工具中封装的初始测试命令,初始测试命令包括模拟动作指令和与所述模拟动作指令对应
的模拟动作参数;转换单元,用于将初始测试命令转换为JSON格式的第一测试命令。

在一种可能的实现方式中,模拟动作参数包括坐标参数和/或目标应用的元素标
识;在所述模拟动作参数包括坐标参数和目标应用的元素标识时,所述发送模块包括:获取
单元,用于根据所述元素标识查找对应的控件元素,获取所述控件元素的位置太阳城集团;确定单
元,用于根据所述控件元素的位置太阳城集团和所述坐标参数,确定对所述控件元素的操作区域;
处理单元,用于根据所述模拟动作指令,对所述控件元素在所述操作区域执行相应的模拟
操作。

在一种可能的实现方式中,转换模块用于:根据第一测试命令生成jar包,并将jar
包封装为第二测试命令。

在一种可能的实现方式中,转换模块用于:根据预设类型的命令将所述第一测试
命令中的所述模拟动作指令和所述模拟动作参数传递至jar包中。

本发明实施例提供的一种跨进程测试的方法及装置,通过将基于instruments类
工具封装的第一测试命令转换为用于调用非instruments类工具的第二测试命令,从而实
现跨进程测试。同时,由于第一测试命令为基于instruments类工具封装而成的命令,具有
较高的稳定性,从而可以保证第二测试命令也具有较高的稳定性。即该方法在保证测试稳
定性的同时,可以实现跨进程测试。采用JSON格式的第一测试命令,方便在instruments类
工具与非instruments类工具之间传输命令,方法简单且效率高。

为实现上述发明目的,再一方面,本发明实施例提供了一种电子设备,包括:至少
一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被
所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一
个处理器执行以上各个方面所述的方法。

为实现上述发明目的,再一方面,本申请实施例还提供了一种非暂态计算机可读
存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行以上各个方面所述
的方法。

为实现上述发明目的,再一方面,本发明实施例提供了一种计算机程序产品,所述
计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序
包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行以上各个方面所述的
方法。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变
得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明
书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说
明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除
非有特别申明,附图中的图不构成比例限制。

图1为本发明实施例中跨进程测试的方法流程图;

图2为本发明实施例中获取第一测试命令的方法流程图;

图3为本发明实施例1中跨进程测试的方法流程图;

图4为本发明实施例中跨进程测试的装置的结构图;

图5为本发明实施例中获取模块的结构图;

图6为本发明实施例中发送模块的结构图;

图7为本发明实施例中跨进程测试的电子设备的结构示意图。

具体实施方式

下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保
护范围并不受具体实施方式的限制。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例
中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非
另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或
“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成
部分。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”
所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。
本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于
本领域技术人员熟知的方法、手段、元件未作详细描述,以便于凸显本发明的主旨。

除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变
换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元
件或其它组成部分。

根据本发明实施例,提供了一种跨进程测试的方法,图1为该方法的流程图,由电
子设备执行,该方法具体包括步骤101-103:

步骤101:获取基于instruments类工具封装的第一测试命令,第一测试命令包括
模拟动作指令和与模拟动作指令对应的模拟动作参数。

本发明实施例中,instruments类工具指的是基于instruments类的测试工具,例
如工具Robotium等。对于此类测试工具,测试操作仅仅局限于待测应用本身,如果待测应用
中存在与其他应用发生交互的执行逻辑时,这种测试框架无法进行测试,即不能实现调用
其他进程参与测试。例如,即时通讯进程在使用过程中经常需要调用网页太阳城集团器、终端相册
等其他进程,instruments类工具无法对跨进程调用的功能进行模拟测试。

第一测试命令为基于instruments类工具封装生成的命令,即基于instruments类
工具可执行的测试命令生成该第一测试命令。该第一测试命令包括模拟动作指令和与模拟
动作指令对应的模拟动作参数。

步骤102:解析第一测试命令,并将第一测试命令转换为用于调用非instruments
类工具的第二测试命令,第二测试命令包括模拟动作指令和模拟动作参数。

本发明实施例中,解析第一测试命令即可以确定第一测试命令中的模拟动作指令
和相对应的模拟动作参数;进而根据该模拟动作指令和模拟动作参数确定用于调用非
instruments类工具的第二测试命令,即根据该第二测试命令可以调用非instruments类工
具,非instruments类工具可以执行该第二测试命令。同时,由于第二测试命令为基于第一
测试命令转换而来的命令,故第二测试命令也包括模拟动作指令和相对应的模拟动作参
数。

本发明实施例中,非instruments类工具为不需要基于instruments类的测试工
具,例如uiautomator;非instruments类工具支持跨进程调用。

步骤103:将第二测试命令发送至非instruments类工具,以使非instruments类工
具解析第二测试命令,并根据模拟动作指令和模拟动作参数执行模拟操作。

本发明实施例中,在将第二测试命令发送至非instruments类工具后,非
instruments类工具即可以解析第二测试命令并获取模拟动作指令和与模拟动作指令对应
的模拟动作参数,非instruments类工具根据该模拟动作指令和模拟动作参数即可以正确
的执行相对应的模拟操作。

本发明实施例提供的一种跨进程测试的方法,通过将基于instruments类工具封
装的第一测试命令转换为用于调用非instruments类工具的第二测试命令,从而实现跨进
程测试。同时,由于第一测试命令为基于instruments类工具封装而成的命令,具有较高的
稳定性,从而可以保证第二测试命令也具有较高的稳定性。即该方法在保证测试稳定性的
同时,可以实现跨进程测试。

本发明另一实施例提供了一种跨进程测试的方法,包括图1所示的步骤101到步骤
103,其实现原理和有益效果可以参考图1所示的实施例。具体的,参见图2所示,上述步骤
101中的“获取基于instruments类工具封装的第一测试命令,第一测试命令包括模拟动作
指令和与模拟动作指令对应的模拟动作参数”包括步骤201-202:

步骤201:获取在instruments类工具中封装的初始测试命令,初始测试命令包括
模拟动作指令和与模拟动作指令对应的模拟动作参数。

步骤202:将初始测试命令转换为JSON格式的第一测试命令。

本发明实施例中,初始测试命令为在instruments类工具中封装而成的命令,
instruments类工具可以执行该初始测试命令。之后将初始测试命令转换为JSON
((JavaScript Object Notation,是一种轻量级的数据交换格式)格式的第一测试命令,由
于JSON采用完全独立于语言的文本格式,易于人阅读和编写,同时也易于机器解析和生成,
方便传输该第一测试命令。

具体的,以键值对结构的JOSN格式为例,若需要测试点击操作,此时在
instruments端测试工具中封装初始测试命令clickOnText(x,y),其中x,y参数为要点击的
坐标参数,假设分别为128和134;之后根据该初始测试命令即可以确定键值对结构的第一
测试命令:{action:”clickOnText”,parameters:”128,134”}。

其中,在一种可能的实现方式中,所述模拟动作指令用于模拟用户操作,其具体可
以为:模拟点击指令、模拟长按指令、模拟滑动指令等。模拟动作参数可以包括坐标参数和/
或目标应用的元素标识;其中,坐标参数即对应操作区域的一个坐标;目标应用的元素标识
可以为预先设定的模拟动作指令的触发对象,例如目标应用的指定控件的名称、控件ID或
其他用于识别控件的标识太阳城集团。

当模拟动作参数包括坐标参数和目标应用的元素标识时,上述步骤103中根据所
述模拟动作指令和所述模拟动作参数执行模拟操作具体包括:根据所述元素标识查找对应
的控件元素,获取所述控件元素的位置太阳城集团;根据所述控件元素的位置太阳城集团和所述坐标参
数,确定对所述控件元素的操作区域;根据所述模拟动作指令,对所述控件元素在所述操作
区域执行相应的模拟操作。

在一种可能的实现方式中,将第一测试命令转换为用于调用非instruments类工
具的第二测试命令,包括:根据第一测试命令生成jar包,并将jar包封装为第二测试命令。
具体的,根据预设类型的预设类型的命令将所述第一测试命令中的所述模拟动作指令和所
述模拟动作参数传递至jar包中,在一种可能的实现方式中,该预设类型的命令为adb
shell命令,以"adb shell"开头的命令,都可以先执行adb shell命令进入目标设备的
Linux Shell环境,然后在目标设备的Linux Shell中再执行"adb shell"之后的命令。如
adb shell dumpsys activity,可以先执行adb shell,然后在Linux Shell中再执行
dumpsys activity。利用adb shell命令可以方便快捷的将第一测试命令中的参数传递至
第二测试命令中,操作简单且效率高。

本发明实施例中,根据第一测试命令生成的jar包,之后将jar包封装为第二测试
命令。具体的,一个第二测试命令具体可以如下:“adb shell uiautomator runtest
UIA.jar–c com.letv.xxx.Test–e{action:”clickOnText”,parameters:”128,134”}”,非
instruments类工具接收到第二测试命令后,解析-e参数中的json{action:”
clickOnText”,parameters:”128,134”},找到对应的操作方法ClickOnText并进行实际点
击操作。其中,UIA.jar是根据第一测试命令生成的jar包的名字,com.letv.xxx.Test是包
名和用以调用的类名;整句命令的作用是批处理脚本调用jar包进行执行对应的测试用例
com.letv.xxx.Test。

下面通过一个实施例详细介绍该方法的流程。

在本实施例中,由instruments类工具将初始测试命令转换为第一测试命令。具体
的,参见图3所示,该方法包括:步骤301-306:

步骤301:instruments类工具封装初始测试命令,该初始测试命令包括模拟动作
指令和与模拟动作指令对应的模拟动作参数。

具体的,实施例1中以点击操作为例,该初始测试命令可以为clickOnText(x,y),
其中x,y参数为要点击的坐标参数,实施例1中分别为128和134。

步骤302:将初始测试命令转换为JSON格式的第一测试命令,并将第一测试命令发
送至中间调用服务。

具体的,第一测试命令为{action:”clickOnText”,parameters:”128,134”}。

步骤303:中间调用服务接收第一测试命令。

实施例1中,中间调用服务位于instruments类工具和非instruments类工具之间,
用于为二者提供调用服务。

步骤304:解析第一测试命令,并将第一测试命令转换为用于调用非instruments
类工具的第二测试命令。

其中,第二测试命令具体可以如下:“adb shell uiautomator runtest UIA.jar–
c com.letv.xxx.Test–e{action:”clickOnText”,parameters:”128,134”}”。

步骤305:中间调用服务将第二测试命令发送至非instruments类工具。

步骤306:非instruments类工具解析第二测试命令,并根据模拟动作指令和模拟
动作参数执行相应的模拟操作。

具体的,非instruments端工具接收到第二测试命令后,解析第二测试命令中-e参
数中的json{action:”clickOnText”,parameters:”128,134”},找到对应的操作方法
ClickOnText并进行实际点击操作。

本发明实施例提供的一种跨进程测试的方法,通过将基于instruments类工具封
装的第一测试命令转换为用于调用非instruments类工具的第二测试命令,从而实现跨进
程测试。同时,由于第一测试命令为基于instruments类工具封装而成的命令,具有较高的
稳定性,从而可以保证第二测试命令也具有较高的稳定性。即该方法在保证测试稳定性的
同时,可以实现跨进程测试。采用JSON格式的第一测试命令,方便在instruments类工具与
非instruments类工具之间传输命令,方法简单且效率高。

以上详细介绍了一种跨进程测试的方法流程,该方法也可以通过相应的装置实
现,下面详细介绍该装置的结构和功能。

本发明实施例提供的一种跨进程测试的装置,参见图4所示,包括:获取模块41、转
换模块42和发送模块43。

获取模块41用于获取基于instruments类工具封装的第一测试命令,第一测试命
令包括模拟动作指令和与模拟动作指令对应的模拟动作参数。

转换模块42用于解析第一测试命令,并将第一测试命令转换为用于调用非
instruments类工具的第二测试命令,第二测试命令包括模拟动作指令和模拟动作参数。

发送模块43用于将第二测试命令发送至非instruments类工具,以使非
instruments类工具解析第二测试命令,并根据模拟动作指令和模拟动作参数执行模拟操
作。

在一种可能的实现方式中,第一测试命令为JSON格式的命令。

本发明另一实施例提供了一种跨进程测试的装置,包括图4所示的获取模块41、转
换模块42和发送模块43,其实现原理和有益效果可以参考图4所示的实施例。其中,本发明
实施例中,参见图5所示,获取模块41包括:获取单元411和转换单元412。

获取单元411用于获取在instruments类工具中封装的初始测试命令,初始测试命
令包括模拟动作指令和与模拟动作指令对应的模拟动作参数。转换单元412用于将初始测
试命令转换为JSON格式的第一测试命令。

在一种可能的实现方式中,模拟动作参数包括坐标参数和/或目标应用的元素标
识。在模拟动作参数包括坐标参数和目标应用的元素标识时,参见图6所示,发送模块43包
括:获取单元431、确定单元432和处理单元433。

获取单元431用于根据元素标识查找对应的控件元素,获取控件元素的位置太阳城集团。

确定单元432用于根据控件元素的位置太阳城集团和坐标参数,确定对控件元素的操作
区域。

处理单元433用于根据模拟动作指令,对控件元素在操作区域执行相应的模拟操
作。

在一种可能的实现方式中,转换模块42具体用于:根据第一测试命令生成jar包,
并将jar包封装为第二测试命令。

在一种可能的实现方式中,转换模块42用于:根据预设类型的命令将第一测试命
令中的模拟动作指令和模拟动作参数传递至jar包中。

本发明实施例提供的一种跨进程测试的方法及装置,通过将基于instruments类
工具封装的第一测试命令转换为用于调用非instruments类工具的第二测试命令,从而实
现跨进程测试。同时,由于第一测试命令为基于instruments类工具封装而成的命令,具有
较高的稳定性,从而可以保证第二测试命令也具有较高的稳定性。即该方法在保证测试稳
定性的同时,可以实现跨进程测试。采用JSON格式的第一测试命令,方便在instruments类
工具与非instruments类工具之间传输命令,方法简单且效率高。

本申请实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有
计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的处理方法。

图7是本申请实施例提供的跨进程测试的方法的电子设备的硬件结构示意图,如
图7所示,该设备包括一个或多个处理器610以及存储器620。图7中以一个处理器610为例。
该设备还可以包括:输入装置630和输出装置640。

处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式
连接,图7中以通过总线连接为例。

存储器620作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程
序、非易失性计算机可执行程序以及模块。处理器610通过运行存储在存储器620中的非易
失性软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上
述方法实施例的处理方法。

存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系
统、至少一个功能所需要的应用程序;存储数据区可存储数据等。此外,存储器620可以包括
高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器
件、或其他非易失性固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610
远程设置的存储器,这些远程存储器可以通过网络连接至处理装置。上述网络的实例包括
但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置630可接收输入的数字或字符太阳城集团,以及产生信号输入。输出装置640可
包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器
610执行时,执行:获取基于instruments类工具封装的第一测试命令,第一测试命令包括模
拟动作指令和与模拟动作指令对应的模拟动作参数;解析第一测试命令,并将第一测试命
令转换为用于调用非instruments类工具的第二测试命令,第二测试命令包括模拟动作指
令和模拟动作参数;将第二测试命令发送至非instruments类工具,以使非instruments类
工具解析第二测试命令,并根据模拟动作指令和模拟动作参数执行模拟操作。

在一种可能的实现方式中,第一测试命令为JSON格式的命令。

在一种可能的实现方式中,获取基于instruments类工具封装的第一测试命令,包
括:获取在instruments类工具中封装的初始测试命令,初始测试命令包括模拟动作指令和
与模拟动作指令对应的模拟动作参数;将初始测试命令转换为JSON格式的第一测试命令。

在一种可能的实现方式中,模拟动作参数包括坐标参数和/或目标应用的元素标
识;在模拟动作参数包括坐标参数和目标应用的元素标识时,根据模拟动作指令和模拟动
作参数执行模拟操作具体包括:根据元素标识查找对应的控件元素,获取控件元素的位置
太阳城集团;根据控件元素的位置太阳城集团和坐标参数,确定对控件元素的操作区域;根据模拟动作指
令,对控件元素在操作区域执行相应的模拟操作。

在一种可能的实现方式中,将第一测试命令转换为用于调用非instruments类工
具的第二测试命令,包括:根据第一测试命令生成jar包,并将jar包封装为第二测试命令。

在一种可能的实现方式中,根据第一测试命令生成jar包包括:根据预设类型的命
令将第一测试命令中的模拟动作指令和模拟动作参数传递至jar包中。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有
益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本申请实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据
通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低
端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功
能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、
视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总
线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能
力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可
以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单
元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其
中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可
借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术
方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机
软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以
使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者
实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管
参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可
以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;
而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和
范围。

关 键 词:
一种 跨进 测试 方法 装置 电子设备
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
太阳城集团本文
本文标题:一种跨进程测试的方法、装置及电子设备.pdf
链接地址:http://zh228.com/p-6019547.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');