CN106021099A - 实现智能终端ui自动化测试的***及方法 - Google Patents

实现智能终端ui自动化测试的***及方法 Download PDF

Info

Publication number
CN106021099A
CN106021099A CN201610311161.1A CN201610311161A CN106021099A CN 106021099 A CN106021099 A CN 106021099A CN 201610311161 A CN201610311161 A CN 201610311161A CN 106021099 A CN106021099 A CN 106021099A
Authority
CN
China
Prior art keywords
test
intelligent terminal
module
operational order
control
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
Application number
CN201610311161.1A
Other languages
English (en)
Inventor
陈正勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI LIANTONG NETWORK COMMUNICATIONS TECHNOLOGY Co Ltd
Original Assignee
SHANGHAI LIANTONG NETWORK COMMUNICATIONS TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHANGHAI LIANTONG NETWORK COMMUNICATIONS TECHNOLOGY Co Ltd filed Critical SHANGHAI LIANTONG NETWORK COMMUNICATIONS TECHNOLOGY Co Ltd
Priority to CN201610311161.1A priority Critical patent/CN106021099A/zh
Publication of CN106021099A publication Critical patent/CN106021099A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种实现智能终端UI自动化测试的***及方法,用于对智能终端执行用户界面测试,其中包括:录制模块,用以从所述的智能终端获取用户操作信息,并录制成操作指令脚本,所述的用户操作信息包括操作数据和与操作关联的控件ID;回放模块,用以将操作指令脚本转化为操作指令,并发送至所述的智能终端;以使所述的智能终端根据所述的操作指令执行测试。采用该种结构的实现智能终端UI自动化测试的***及方法,不仅有效地实现了对同种智能终端多次测试的大大简化,并且实现了对于不同的智能终端的兼容,可以在具有不同分辨率的智能终端上执行同一个测试脚本,可以做到一次录制,在不同的智能终端上进行多次快速的自动化测试。

Description

实现智能终端UI自动化测试的***及方法
技术领域
本发明涉及UI测试技术领域,尤其涉及智能终端UI测试技术领域,具体是指一种实现智能终端UI自动化测试的***及方法。
背景技术
用户界面(User interface,UI)测试是指测试用户界面的功能模块的布局是否合理,整体风格是否一致,以及各个控件的放置位置是否符合客户使用***板电脑等的广泛应用十分重要。同时,由于智能终端的种类和数量繁多,单纯的人工测试成本和耗时会很大,由此催生了UI自动化测试。
现有技术中的UI自动化测试通常基于屏幕录制,事件(比如点击)定位基于屏幕坐标。回放时根据屏幕坐标还原事件,实现UI自动化测试。如图1所示,现有技术中的UI自动化测试的过程一般为:控制服务器获取被测程序的数据包,将数据包下发给测试终端;测试终端根据数据包获取用户界面中各项控件的界面坐标;测试终端根据界面坐标对控件进行模拟操作;测试终端记录控件产生的测试结果。这种方式可以省去测试人员对测试用例的编写,在一定程度上降低了测试人员的工作强度。
然而随着科技的不断发展和用户不同需求的增长,智能终端的种类越来越多。现有技术中的UI自动化测试只是解决了对于同种类型,尤其是显示屏具有相同尺寸和相同分辨率的智能终端多次测试的简化,而没有解决在不同的智能终端上的测试兼容问题。由于智能终端的多样化,不同的智能终端通常有多种屏幕分辨率,这样同一回放脚本在不同分辨率的终端上回放时,无法真实还原事件,必须针对不同分辨率录制不同的脚本,从这一角度来看仍然是增加了工作量。因此,UI测试的兼容问题显得刻不容缓。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现一次录制可以在不同智能终端上自动化测试、提高多种不同分辨率用户界面的测试兼容性的实现智能终端UI自动化测试的***及方法。
为了实现上述目的,本发明的实现智能终端UI自动化测试的***及方法具有如下构成:
该实现智能终端UI自动化测试的***,用于对智能终端执行用户界面测试,所述的***包括:
录制模块,用以从所述的智能终端获取用户操作信息,并录制成操作指令脚本,所述的用户操作信息包括操作数据和与操作关联的控件ID;和
回放模块,用以将操作指令脚本转化为操作指令,并发送至所述的智能终端;以使所述的智能终端根据所述的操作指令执行测试。
可选地,回放模块在将操作指令脚本转化为操作指令之后,将操作指令分成每条并按照脚本中的顺序依次发送给所述的智能终端。
所述的智能终端用以根据所述的操作指令执行测试。
可选地,所述的***还可以包括测试评价模块,用以根据测试结果进行测试评价。
本发明的技术方案通过选用控件ID作为控件在录制和回放过程中的标志,其在智能终端操作***中具有唯一性和不可替换性并且不受分辨率的影响,从而不仅有效地实现了对同种智能终端多次测试的大大简化,并且实现了对于不同的智能终端的兼容。
为了更好地实现录制过程中控制ID的获取以及回放过程中测试事件的构造,可选地,所述的***还包括如下功能模块:
测试代理模块,用以获取与操作关联的控件ID,将所述的控件ID和操作数据发送至所述的录制模块,以及根据所述的操作指令构造测试事件;和
控制存储模块,用以获取用户的操作数据,并根据所述的测试事件执行测试。
可选地,所述的测试代理模块包括:
通讯单元,用以与所述的录制模块和回放模块进行通讯;
操作监听单元,用以通过所述的控制存储模块监听用户的操作,并在智能终端存储中查询与操作关联的控件ID;
事件模拟单元,用以将所述的操作指令解析成控件ID和操作数据,并构造测试事件,以及将测试事件***智能终端的程序执行队列。
其中,本发明的智能终端可以是智能手机、平板电脑、机顶盒等多种具有智能操作***的设备,应用范围十分广泛,通讯单元可以采用多种方式,例如USB或网络与测试主机进行通讯。
本发明的操作指令脚本中不仅可以记录控件坐标,还需要记录控件ID。事件模拟单元在构造测试事件的过程中,同样也需要通过所述的控制存储模块查找指令中控件ID所对应的控件。
本发明技术方案还提供一种实现智能终端UI自动化测试的方法,所述的方法包括以下步骤:
(1)所述的智能终端将用户操作信息发送至所述的录制模块,所述的用户操作信息包括操作数据和与操作关联的控件ID;
(2)所述的录制模块将所述的用户操作信息录制成操作指令脚本;
(3)所述的回放模块将操作指令脚本转化为操作指令发送至所述的智能终端;
(4)所述的智能终端根据所述的操作指令执行测试。
由上述技术方案可知,通过测试代理模块、存储模块和控制模块基于测试框架来获取控制ID,在测试工作中,测试代理模块、存储模块和控制模块协同配合,在测试之前不必再特别编写测试用例,录制模块可以根据需要录制智能终端发送过来的数据得到测试脚本,大大提高了测试效率,即使智能终端具有不同的分辨率,也能普遍适用于同一种测试方法,而不会因为控件坐标的改变而导致测试出错,适用于大规模的推广应用。
附图说明
图1为现有技术中UI自动化测试的方法的示意图。
图2为本发明的实现智能终端UI自动化测试的***的结构示意图。
图3为本发明的实现智能终端UI自动化测试的方法的流程图。
图4为本发明的方法中录制过程的示意图。
图5为本发明的方法中回放过程的示意图。
图6为本发明的通过测试框架获取控件ID的示意图。
附图标记:
100 录制模块
200 回放模块
300 测试代理模块
301 通讯单元
302 操作监听单元
303 事件模拟单元
400 存储模块
500 控制模块
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
为了实现上述目的,本发明的技术方案的基本原理为:录制模块100将用户对界面的操作录制下来,保存于操作指令脚本文件中,录制模块100在录制过程中需要获取与操作关联的控件ID;回放模块200调用操作指令脚本文件,把操作指令脚本文件转换成操作指令,操作指令中包含与操作关联的控件ID,并发送操作指令到智能终端完成测试事件模拟。
下面对本发明的实现智能终端UI自动化测试的***及方法进行进一步细化的描述:
首先对于本发明的***进行介绍。如图2所示,本发明的实现智能终端UI自动化测试的***包括录制模块100和回放模块200,录制模块100和回放模块200可以根据需要选择设置在智能终端或测试主机中,图2中给出了一个将录制模块100和回放模块200设置于测试主机的实施例,在实际应用中不限于这种设置方式,其中:
录制模块100,用以从所述的智能终端获取用户操作信息,并录制成操作指令脚本,所述的用户操作信息包括操作数据和与操作关联的控件ID;和回放模块200,用以将操作指令脚本转化为操作指令,并发送至所述的智能终端;所述的智能终端用以根据所述的操作指令执行测试。
本发明的录制模块100在录制操作指令脚本时,获取的用户操作信息中需要包含与操作关联的控件ID。软件开发过程中,控件ID一般的生成方式为:当添加一个控件时,集成开发环境会以控件名加一个序号来自动生成ID。因此每个控件只会有一个与之对应的控件ID,该控件ID从而具有唯一性和不可替代性。
在一种较佳的实施方式中,所述的***还包括测试代理模块300、控制模块500和存储模块400,同样地,这三个模块可以根据需要设置在智能终端或测试主机中,其中:
测试代理模块300,用以获取与操作关联的控件ID,将所述的控件ID和操作数据发送至所述的录制模块100,以及根据所述的操作指令构造测试事件;存储模块400,可以为智能终端操作***的***模块,用以获取用户的操作数据,查询智能操作***信息;控制模块500,可以构造事件数据来模拟用户输入,根据所述的测试事件执行测试。
本发明通过测试代理模块300查询事件坐标上对应的控件ID,控件ID在整个***中唯一,可以唯一定位。录制模块100在录制操作指令脚本时,不仅记录坐标,还记录控件ID。而回放模块200在将操作指令脚本翻译成操作指令时,查询控件ID的坐标位置,可以还原事件坐标,从而达到操作相同控件的目的。
其中,测试代理模块300可以根据屏幕坐标查询控件ID,也可以根据控件ID查询控件的坐标和大小。
此处对智能终端中模块的划分是功能性的划分,即根据智能终端需要具有的功能进行了一个更细致的分类。而其他具有这些功能的技术方案,即使选用了不同的功能划分,即划分成不同的功能模块,也能实现本发明的目的和技术效果,而这些包含了上述功能的技术方案,也属于本发明的保护范围之内。
为了更清楚地说明本发明的技术方案,对所述的测试代理模块300的功能进行进一步的划分,所述的测试代理模块300包括通讯单元301、操作监听单元302和事件模拟单元303,其中:
通讯单元301,用以与所述的录制模块100和回放模块200进行通讯;操作监听单元302,用以通过所述的存储模块400监听用户的操作,并在智能终端存储中查询与操作关联的控件ID;事件模拟单元303,用以将所述的操作指令解析成控件ID和操作数据,获取控件信息,并构造测试事件,以及将测试事件***智能终端的程序执行队列。
在一种较佳的实施方式中,所述的通讯单元301可以通过Socket建立的监听服务端接收所述的操作指令。所述的通讯单元301可以通过TCP或UDP与所述的录制模块100和回放模块200进行通讯,通讯方式采用客户端/服务端的通讯模型。测试Agent通讯模块可用socket编程接口实现。
然而在实际应用中,所述的智能终端与测试主机的通讯还可以采用其他更适合的方式,可以由使用者根据需求和环境进行选择。智能终端和测试主机之间可以通过无线、USB、蓝牙、红外等方式传输数据。通讯单元301获取操作指令的方式也可以更改,只要能实时从回放模块200中获取到进行测试的操作指令即可实现本技术方案。
测试代理模块300需要有智能终端的***权限,能够监听***事件,在***层拦截***事件,即所有事件都会经过测试代理模块300。操作监听单元302查询智能终端操作***的存储模块400,得到***作UI的控件ID,组成操作指令,交给通信单元。
在一种较佳的实施方式中,所述的***还包括可以设置于智能终端或测试主机的测试评价模块,所述的智能终端还用以将测试执行结果发送至所述的测试评价模块,所述的测试评价模块用以根据所述的测试执行结果进行测试评价。
在实际应用中,对测试执行结果评价的方式有很多,用户可以根据测评的重点不同进行选择。在本发明的一种具体实施方式中,所述的测试执行结果需要包括当前活动的UI属性信息,所述的测试评价模块用以将当前活动的UI属性信息与基准数据进行对比并判断测试是否通过,如果UI属性信息在基准数据的预设范围之内,则判断测试通过,否则判断测试不通过。
在一种较佳的实施方式中,所述的用户操作信息还可以包括与操作关联的控件的坐标和大小,更方便对控件进行定位和测试。
在一种较佳的实施方式中,所述的智能终端包括但不限于手机、平板电脑、笔记本电脑或机顶盒,所述的测试主机包括但不限于PC、工作站或服务器。本发明的技术方案可以用于多种不同智能终端的自动化测试,应用范围十分广泛。智能终端需要具有智能操作***,智能终端和测试主机之间可以通过USB、网络进行通讯。
基于上述***,本发明的实现智能终端UI自动化测试的方法的流程如图3所示,包括如下步骤:
(1)所述的智能终端将用户操作信息发送至所述的录制模块100,所述的用户操作信息包括操作数据和与操作关联的控件ID;
(2)所述的录制模块100将所述的用户操作信息录制成操作指令脚本;
(3)所述的回放模块200将操作指令脚本转化为操作指令发送至所述的智能终端;
(4)所述的智能终端根据所述的操作指令执行测试。
在一种较佳的实施方式中,所述的步骤(4)后,还包括以下步骤:
(5)所述的测试评价模块根据测试结果进行测试评价。
下面以一个具体实施例来进一步介绍本发明的实现智能终端UI自动化测试的方法:
本发明的实现智能终端UI自动化测试的方法主要包括两大部分:录制过程和回放过程。
1、录制过程
如图4所示,录制模块100实现用户操作的录制。录制过程分为四个阶段,基本过程描述如下:
(1)智能终端的测试代理模块300与测试主机建立连接并通信;
(2)在智能终端启动被测程序,进入初始界面,在录制模块100界面上点击录制。录制模块100通知测试代理模块300进入录制模式,测试代理模块300从智能终端操作***的存储模块400获取智能终端上的所有操作输入。
(3)测试代理模块300从智能终端操作***的存储模块400查询***作UI元素的控件ID。将控件ID、事件、时长等数据传给录制模块100。
测试代理模块300和录制模块100之间传递数据的类型可以根据实际需要修改,事件的各种相关数据可以采用通用的格式进行录制,从而实现不同智能终端上测试脚本的通用兼容性,也可以附加对于某种智能终端特有的格式数据,实现智能终端UI不同种类的功能测试。
(4)在录制模块100界面上点击结束录制,录制模块100生成操作指令脚本文件,录制过程结束。
该操作指令脚本中由于包含了具有***唯一性的控件ID,以及具有通用格式和内容的事件数据,可以实现同一个测试脚本很好地应用于各种不同智能终端的测试,而不必针对不同的智能终端编写不同的测试脚本,节省了录制时间,也节省了多个测试脚本与多种智能终端之间查找匹配的时间,大大提高了测试效率。
2、回放过程
回放模块200完成测试脚本的自动化执行。回放模块200的UI操作模拟通过测试主机和智能终端的交互来完成,智能终端的测试代理模块300通过Socket建立一个监听服务端,监听测试主机PC端发来的指令,并模拟事件动作的执行。本实施例中的测试代理模块300有两个主要功能:一是与测试主机通信,二是监听动作。
如图5所示,一个操作指令的操作模拟需要以下四个步骤来完成:
(1)所述的回放模块200根据所述的操作指令脚本中记录的操作顺序进行回放,程序从脚本中读取到操作指令,通过socket依次发送操作指令给测试代理模块300;
其中,回放模块200发送给测试代理模块300的操作指令是一个四元组,表现形式为:
(ControlID,EventType,Action,EventData)
每个操作指令表示一个用户操作,它精确的反应了操作的控件和用户对控件进行的操作。
其中,ControlID为UI元素的ID,具有***唯一性和不可替换性;EventType表示事件类型,包括key事件、motion事件和time事件。其中key表示点击键盘输入类型。Motion表示click、拖拽类型,time表示定时事件类型;Action表示事件动作,比如key事件有key down、key up;EventData表示事件关联的数据,比如key类型为keycode。
此处只是操作指令的一个简单的示例。实际应用中,操作指令包含的内容、格式、事件类型的分类、事件动作的分类以及事件关联的数据均可以由测试人员自主定义,只要能够包含控制ID,且包含的其他数据可以还原用户之前的操作即可。
(2)当所述的测试代理模块300接收一条指令后,首先检查操作指令是否符合定义。由于操作指令均有统一的格式和定义,测试代理模块300可以很容易地从一条操作指令中对信息进行分类,分别从操作指令中分离出控件ID、EventType、Action、EventData信息。
然后所述的测试代理模块300根据控件ID,通过所述的存储模块400查询智能操作***中对应的控件,进一步查询到***中控件的位置,通过位置信息和动作,构造***事件;本发明的测试代理模块300可以在录制过程中通过控件的坐标查询得到控件ID,也可以在回放过程中通过控件ID查询得到控件的坐标;
(3)所述的测试代理模块300将构建的***事件依次***到智能终端***的消息队列中。智能终端***处理到这些事件的时候,完成模拟;
(4)指令执行完毕后,所述的测试代理模块300返回执行结果给测试主机PC端。同时,在回放程序执行过程中,***要判断检查点。检查点处,执行完动作后***要获取当前Activity的UI属性信息,所述的测试评价模块将信息和基准数据进行对比,判断测试是否通过。在实际应用中,测试评价的方法还可以采用其他方式,并且可以由测试者自主选择,用以匹配不同类型的UI功能测试。
在所述的测试代理模块300监听事件和模拟***事件的功能中,都需要获取控件ID,这个在本实施例中可以通过测试框架来实现。比如Robotium,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API(API为操作***留给应用程序的一个调用接口,应用程序通过调用操作***的API而使操作***去执行应用程序的命令),能够对各种控件进行操作。
如图6所示,在本实施例中,测试代理模块300的实现借助于测试框架提供的接口,在事件监听时查询控件ID,在事件模拟单元303中,解析出控件ID、事件信息,通过测试框架接口,发往智能终端***的事件队列。在实际应用中,本发明的技术方案不限于采用该种方式获取控件ID和执行测试事件。
采用了该发明中的实现智能终端UI自动化测试的***及方法,具有如下有益效果:
(1)采用本发明的技术方案,通过选用控件ID作为控件在录制和回放过程中的标志,其在智能终端操作***中具有唯一性和不可替换性并且不受分辨率的影响,从而不仅有效地实现了对同种智能终端多次测试的大大简化,并且实现了对于不同的智能终端的兼容,可以在具有不同分辨率的智能终端上执行同一个测试脚本,可以做到一次录制,在不同的智能终端上进行多次快速的自动化测试;
(2)本发明的方法特别适用于UI自动化回归测试;回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误,自动回归测试将大幅降低***测试、维护升级等阶段的成本,其作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试,在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是非常有意义的;
(3)本发明的回放模块在发送操作指令时,设置检查点,由测试主机根据测试程序反馈回来的测试结果与基准数据对比进行综合评价,保证整个测试过程的顺利进行,并且在关键点充分了解测试情况,达到UI功能测试的目的;
(4)本发明的技术方案中通过测试代理模块、存储模块和控制模块基于测试框架来获取控制ID,在测试工作中,测试代理模块、存储模块和控制模块协同配合,在测试之前不必再特别编写测试用例,录制模块可以根据需要录制智能终端发送过来的数据得到测试脚本,大大提高了测试效率,可以广泛应用于各种智能终端如手机、平板电脑等的UI自动化测试,具有更广泛的应用范围。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (21)

1.一种实现智能终端UI自动化测试的***,用于对智能终端执行用户界面测试,其特征在于,所述的***包括:
录制模块,用以从所述的智能终端获取用户操作信息,并录制成操作指令脚本,所述的用户操作信息包括操作数据和与操作关联的控件ID;和
回放模块,用以将操作指令脚本转化为操作指令,并发送至所述的智能终端;以使所述的智能终端根据所述的操作指令执行测试。
2.根据权利要求1所述的实现智能终端UI自动化测试的***,其特征在于,所述的***还包括:
测试代理模块,用以获取与操作关联的控件ID,将所述的控件ID和操作数据发送至所述的录制模块,以及根据所述的操作指令构造测试事件;和
存储模块,用以获取用户的操作数据并存储;
控制模块,用以根据所述的测试事件执行智能终端用户界面测试。
3.根据权利要求2所述的实现智能终端UI自动化测试的***,其特征在于,所述的测试代理模块包括:
通讯单元,用以与所述的录制模块和回放模块进行通讯;
操作监听单元,用以通过所述的存储模块监听用户的操作,并在智能终端存储中查询与操作关联的控件ID;
事件模拟单元,用以将所述的操作指令解析成控件ID和操作数据,并构造测试事件,以及将测试事件***智能终端的程序执行队列。
4.根据权利要求3所述的实现智能终端UI自动化测试的***,其特征在于,所述的通讯单元通过Socket建立的监听服务端接收所述的操作指令;或者所述的通讯单元通过TCP或UDP与所述的录制模块和回放模块进行通讯,通讯方式采用客户端/服务端的通讯模型。
5.根据权利要求1所述的实现智能终端UI自动化测试的***,其特征在于,所述的***还包括测试评价模块,所述的智能终端还用以将测试执行结果发送至所述的测试评价模块,所述的测试评价模块用以根据所述的测试执行结果进行测试评价。
6.根据权利要求5所述的实现智能终端UI自动化测试的***,其特征在于,所述的测试执行结果包括当前活动的UI属性信息,所述的测试评价模块用以将当前活动的UI属性信息与基准数据进行对比,如果UI属性信息在基准数据的预设范围之内,则判断测试通过,否则判断测试不通过。
7.根据权利要求1所述的实现智能终端UI自动化测试的***,其特征在于,所述的操作数据包括操作类型、操作动作和与操作关联的数据,所述的操作类型包括键盘输入类型操作、点击/拖拽类型操作和定时事件类型操作。
8.根据权利要求1所述的实现智能终端UI自动化测试的***,其特征在于,所述的用户操作信息还包括与操作关联的控件的坐标和大小。
9.根据权利要求1所述的实现智能终端UI自动化测试的***,其特征在于,所述的智能终端为手机、平板电脑、笔记本电脑或机顶盒。
10.一种基于权利要求1至9中任一项所述的***实现智能终端UI自动化测试的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的智能终端将用户操作信息发送至所述的录制模块,所述的用户操作信息包括操作数据和与操作关联的控件ID;
(2)所述的录制模块将所述的用户操作信息录制成操作指令脚本;
(3)所述的回放模块将操作指令脚本转化为操作指令发送至所述的智能终端;
(4)所述的智能终端根据所述的操作指令执行测试。
11.根据权利要求10所述的实现智能终端UI自动化测试的方法,其特征在于,所述的***还包括测试代理模块和存储模块,所述的步骤(1),包括以下步骤:
(1-1)所述的存储模块获取用户的操作数据;
(1-2)所述的测试代理模块通过所述的存储模块查询与操作关联的控件ID;
(1-3)所述的测试代理模块将所述的操作数据和与操作关联的控件ID发送至所述的录制模块。
12.根据权利要求11所述的实现智能终端UI自动化测试的方法,其特征在于,所述的测试代理模块包括操作监听单元,所述的步骤(1-2),包括以下步骤:
(1-2-1)所述的操作监听单元通过所述的存储模块监听用户的操作;
(1-2-2)所述的操作监听单元在智能终端存储中查询与操作关联的控件ID。
13.根据权利要求11所述的实现智能终端UI自动化测试的方法,其特征在于,所述的***还包括控制模块,所述的步骤(4),包括以下步骤:
(4-1)所述的测试代理模块根据操作指令构造测试事件;
(4-2)所述的控制模块根据所述的测试事件执行测试。
14.根据权利要求13所述的实现智能终端UI自动化测试的方法,其特征在于,所述的测试代理模块包括通讯单元和事件模拟单元,所述的步骤(4-1),包括以下步骤:
(4-1-1)所述的通讯单元接收所述的操作指令;
(4-1-2)所述的事件模拟单元将所述的操作指令解析成控件ID和操作数据;
(4-1-3)所述的事件模拟单元构造测试事件;
(4-1-4)所述的事件模拟单元将测试事件***智能终端的程序执行队列。
15.根据权利要求14所述的实现智能终端UI自动化测试的方法,其特征在于,所述的通讯单元接收所述的操作指令,具体为:
所述的通讯单元通过Socket建立的监听服务端接收所述的操作指令。
16.根据权利要求10所述的实现智能终端UI自动化测试的方法,其特征在于,所述的步骤(3),包括以下步骤:
(3-1)所述的回放模块将所述的操作指令脚本转化为操作指令;
(3-2)所述的回放模块根据脚本中的顺序将所述的操作指令依次发送至所述的智能终端。
17.根据权利要求10所述的实现智能终端UI自动化测试的方法,其特征在于,所述的***还包括测试评价模块,所述的步骤(4)之后,还包括以下步骤:
(5-1)所述的智能终端将测试执行结果发送至所述的测试评价模块;
(5-2)所述的测试评价模块根据所述的测试执行结果进行测试评价。
18.根据权利要求17所述的实现智能终端UI自动化测试的方法,其特征在于,所述的测试执行结果包括当前活动的UI属性信息,所述的测试评价模块根据所述的测试执行结果进行测试评价,具体为:
所述的测试评价模块将当前活动的UI属性信息与基准数据进行对比,如果UI属性信息在基准数据的预设范围之内,则判断测试通过,否则判断测试不通过。
19.根据权利要求17所述的实现智能终端UI自动化测试的方法,其特征在于,所述的步骤(5-2)之后,还包括以下步骤:
(5-3)所述的回放模块判断所述的操作指令脚本中是否执行完毕,如果是,则结束退出,否则继续步骤(3)。
20.根据权利要求19所述的实现智能终端UI自动化测试的方法,其特征在于,所述的(5-1)和(5-2)之间,还包括以下步骤:
(5-1-1)所述的测试评价模块判断当前节点是否为***预设检查点,如果是,则继续步骤(5-2),否则继续步骤(5-3)。
21.根据权利要求10所述的实现智能终端UI自动化测试的方法,其特征在于,所述的操作数据包括操作类型、操作动作和与操作关联的数据,所述的操作类型包括键盘输入类型操作、点击/拖拽类型操作和定时事件类型操作。
CN201610311161.1A 2016-05-12 2016-05-12 实现智能终端ui自动化测试的***及方法 Pending CN106021099A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610311161.1A CN106021099A (zh) 2016-05-12 2016-05-12 实现智能终端ui自动化测试的***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610311161.1A CN106021099A (zh) 2016-05-12 2016-05-12 实现智能终端ui自动化测试的***及方法

Publications (1)

Publication Number Publication Date
CN106021099A true CN106021099A (zh) 2016-10-12

Family

ID=57099173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610311161.1A Pending CN106021099A (zh) 2016-05-12 2016-05-12 实现智能终端ui自动化测试的***及方法

Country Status (1)

Country Link
CN (1) CN106021099A (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528413A (zh) * 2016-10-27 2017-03-22 北京锐安科技有限公司 一种应用程序的测试方法及装置
CN106649128A (zh) * 2016-12-30 2017-05-10 上海二三四五网络科技有限公司 一种自动控制终端运行的方法
CN106874190A (zh) * 2016-12-30 2017-06-20 上海亿账通互联网科技有限公司 用户界面的测试方法及服务器
CN107193750A (zh) * 2017-07-04 2017-09-22 北京云测信息技术有限公司 一种脚本录制方法和装置
CN107357726A (zh) * 2017-07-04 2017-11-17 广州云测信息技术有限公司 一种应用程序兼容性测试方法和装置
CN107562609A (zh) * 2017-09-06 2018-01-09 叶进蓉 一种用户界面操作录制方法及***
CN108717393A (zh) * 2018-05-16 2018-10-30 平安科技(深圳)有限公司 一种应用程序测试方法及移动终端
CN109783389A (zh) * 2019-01-22 2019-05-21 未来电视有限公司 元素控件自动测试方法、装置及电子设备
CN109800135A (zh) * 2017-11-17 2019-05-24 腾讯科技(深圳)有限公司 一种信息处理方法及终端
CN110502437A (zh) * 2019-07-31 2019-11-26 惠州市德赛西威汽车电子股份有限公司 一种车载蓝牙应用程序的测试***及其方法
CN110716849A (zh) * 2018-07-11 2020-01-21 亿度慧达教育科技(北京)有限公司 应用程序的测试用例录制方法和装置
CN110727578A (zh) * 2019-08-30 2020-01-24 苏宁智能终端有限公司 一种智能终端自动化测试方法及装置
CN111061630A (zh) * 2019-11-26 2020-04-24 歌尔股份有限公司 产品调试方法、调试装置及可读存储介质
CN111104315A (zh) * 2019-11-29 2020-05-05 京东数字科技控股有限公司 一种测试脚本生成方法及装置、计算机可读存储介质
CN111444091A (zh) * 2020-03-23 2020-07-24 北京字节跳动网络技术有限公司 测试用例生成方法及装置
CN111913869A (zh) * 2019-05-08 2020-11-10 立端科技股份有限公司 自动测试主机操作***的测试方法及其测试***
CN112596848A (zh) * 2020-12-30 2021-04-02 北京达佳互联信息技术有限公司 一种录屏方法、装置、电子设备、存储介质及程序产品
CN113110987A (zh) * 2020-01-13 2021-07-13 中车唐山机车车辆有限公司 一种动车组单节车厢制动调试方法及调试设备
CN113760750A (zh) * 2021-08-13 2021-12-07 深圳Tcl新技术有限公司 一种智能设备测试方法、装置、电子设备和存储介质
CN117609060A (zh) * 2023-12-01 2024-02-27 上海鱼尔网络科技有限公司 录制脚本生成方法、装置、计算机设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241466A (zh) * 2007-02-08 2008-08-13 深圳迈瑞生物医疗电子股份有限公司 一种嵌入式软件的测试方法和***
CN101620564A (zh) * 2008-06-30 2010-01-06 福建升腾资讯有限公司 终端***的录制回放模式自动化测试方法
CN103365779A (zh) * 2013-07-09 2013-10-23 广东欧珀移动通信有限公司 软件测试方法和***
CN104572447A (zh) * 2014-12-19 2015-04-29 中国电子科技集团公司第十五研究所 基于安卓操作***的业务流程录制-回放方法及***
CN104615538A (zh) * 2015-02-05 2015-05-13 天津市康凯特软件科技有限公司 一种基于手机界面控件元素的手机应用测试方法
US20150254173A1 (en) * 2014-03-07 2015-09-10 Ca, Inc. Automated generation of test cases for regression testing
CN105138463A (zh) * 2015-09-25 2015-12-09 成都中科创达软件有限公司 一种移动终端的软件测试方法及***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241466A (zh) * 2007-02-08 2008-08-13 深圳迈瑞生物医疗电子股份有限公司 一种嵌入式软件的测试方法和***
CN101620564A (zh) * 2008-06-30 2010-01-06 福建升腾资讯有限公司 终端***的录制回放模式自动化测试方法
CN103365779A (zh) * 2013-07-09 2013-10-23 广东欧珀移动通信有限公司 软件测试方法和***
US20150254173A1 (en) * 2014-03-07 2015-09-10 Ca, Inc. Automated generation of test cases for regression testing
CN104572447A (zh) * 2014-12-19 2015-04-29 中国电子科技集团公司第十五研究所 基于安卓操作***的业务流程录制-回放方法及***
CN104615538A (zh) * 2015-02-05 2015-05-13 天津市康凯特软件科技有限公司 一种基于手机界面控件元素的手机应用测试方法
CN105138463A (zh) * 2015-09-25 2015-12-09 成都中科创达软件有限公司 一种移动终端的软件测试方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张浩华 等: "《软件质量保证与测试技术研究》", 31 January 2015, 北京:中国水利水电出版社 *
米卡赤子: "智能手机自动化测试方案", 《HTTP://WWW.360DOC.CN/ARTICLE/2776353_234234739.HTML》 *

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528413A (zh) * 2016-10-27 2017-03-22 北京锐安科技有限公司 一种应用程序的测试方法及装置
CN106649128A (zh) * 2016-12-30 2017-05-10 上海二三四五网络科技有限公司 一种自动控制终端运行的方法
CN106874190A (zh) * 2016-12-30 2017-06-20 上海亿账通互联网科技有限公司 用户界面的测试方法及服务器
CN107193750A (zh) * 2017-07-04 2017-09-22 北京云测信息技术有限公司 一种脚本录制方法和装置
CN107357726A (zh) * 2017-07-04 2017-11-17 广州云测信息技术有限公司 一种应用程序兼容性测试方法和装置
CN107562609A (zh) * 2017-09-06 2018-01-09 叶进蓉 一种用户界面操作录制方法及***
CN109800135B (zh) * 2017-11-17 2022-01-07 腾讯科技(深圳)有限公司 一种信息处理方法及终端
CN109800135A (zh) * 2017-11-17 2019-05-24 腾讯科技(深圳)有限公司 一种信息处理方法及终端
CN108717393A (zh) * 2018-05-16 2018-10-30 平安科技(深圳)有限公司 一种应用程序测试方法及移动终端
WO2019218458A1 (zh) * 2018-05-16 2019-11-21 平安科技(深圳)有限公司 一种应用程序测试方法、装置、移动终端及介质
CN108717393B (zh) * 2018-05-16 2022-05-27 平安科技(深圳)有限公司 一种应用程序测试方法及移动终端
CN110716849A (zh) * 2018-07-11 2020-01-21 亿度慧达教育科技(北京)有限公司 应用程序的测试用例录制方法和装置
CN109783389A (zh) * 2019-01-22 2019-05-21 未来电视有限公司 元素控件自动测试方法、装置及电子设备
CN111913869A (zh) * 2019-05-08 2020-11-10 立端科技股份有限公司 自动测试主机操作***的测试方法及其测试***
CN111913869B (zh) * 2019-05-08 2024-02-13 立端科技股份有限公司 自动测试主机操作***的测试方法及其测试***
CN110502437B (zh) * 2019-07-31 2023-07-28 惠州市德赛西威汽车电子股份有限公司 一种车载蓝牙应用程序的测试***及其方法
CN110502437A (zh) * 2019-07-31 2019-11-26 惠州市德赛西威汽车电子股份有限公司 一种车载蓝牙应用程序的测试***及其方法
CN110727578A (zh) * 2019-08-30 2020-01-24 苏宁智能终端有限公司 一种智能终端自动化测试方法及装置
CN110727578B (zh) * 2019-08-30 2024-05-31 苏宁智能终端有限公司 一种智能终端自动化测试方法及装置
CN111061630A (zh) * 2019-11-26 2020-04-24 歌尔股份有限公司 产品调试方法、调试装置及可读存储介质
CN111104315A (zh) * 2019-11-29 2020-05-05 京东数字科技控股有限公司 一种测试脚本生成方法及装置、计算机可读存储介质
CN113110987A (zh) * 2020-01-13 2021-07-13 中车唐山机车车辆有限公司 一种动车组单节车厢制动调试方法及调试设备
CN113110987B (zh) * 2020-01-13 2024-04-09 中车唐山机车车辆有限公司 一种动车组单节车厢制动调试方法及调试设备
CN111444091A (zh) * 2020-03-23 2020-07-24 北京字节跳动网络技术有限公司 测试用例生成方法及装置
CN112596848A (zh) * 2020-12-30 2021-04-02 北京达佳互联信息技术有限公司 一种录屏方法、装置、电子设备、存储介质及程序产品
CN112596848B (zh) * 2020-12-30 2024-06-04 北京达佳互联信息技术有限公司 一种录屏方法、装置、电子设备、存储介质及程序产品
CN113760750A (zh) * 2021-08-13 2021-12-07 深圳Tcl新技术有限公司 一种智能设备测试方法、装置、电子设备和存储介质
CN117609060A (zh) * 2023-12-01 2024-02-27 上海鱼尔网络科技有限公司 录制脚本生成方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN106021099A (zh) 实现智能终端ui自动化测试的***及方法
CN102693183B (zh) 一种实现软件自动化测试的方法及***
CN106021095B (zh) 一种基于推送机制的Android应用自动化测试方法
CN108959000A (zh) 一种服务器压力测试方法、***及终端
EP2169541B1 (en) Method, system and graphical user interface for configuring a simulator to simulate a plurality of devices
CN106569801A (zh) 一种基于复杂参数的组态化显控***
CN106250307A (zh) 一种银行手机应用自动化测试方法及***
CN105094783A (zh) 安卓应用稳定性测试的方法及装置
CN104579822A (zh) 基于Http协议的移动应用自动化性能测试***及方法
CN102053911A (zh) 基于Android的自动化测试方法、***及移动终端
CN101710351B (zh) 用于对多个设备进行仿真的方法和***
CN110362490B (zh) 融合iOS与Android移动应用的自动化测试方法及***
CN102916848B (zh) 一种基于脚本技术的以太网接口设备的自动测试方法
CN108664386A (zh) 一种自动化测试方法和平台
CN105204991A (zh) 一种物联设备测试方法及装置
CN102411540A (zh) 基于工作流的通用软件测试过程自动化管理***
CN110502434A (zh) 一种自动测试方法与装置
CN109815120A (zh) 应用的测试方法、装置、计算机设备和存储介质
CN105760300B (zh) 一种stk/utk业务的自动化测试方法及测试***
CN109445384B (zh) 一种多设备控制***
CN111245671A (zh) 用于卫星激光通信终端地面测试的自动化集成测试***
CN106651650A (zh) 联调测控装置及应用该装置的电力物联网联调测控***
CN114172835A (zh) 一种蓝牙数字钥匙的自动化测试方法
CN108959094A (zh) 一种基于数据结构的测试程序的定义和应用方法
CN111104281B (zh) 一种游戏性能监控方法、装置、***及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20161012