CN107102937B - 一种用户界面测试方法和装置 - Google Patents
一种用户界面测试方法和装置 Download PDFInfo
- Publication number
- CN107102937B CN107102937B CN201610092405.1A CN201610092405A CN107102937B CN 107102937 B CN107102937 B CN 107102937B CN 201610092405 A CN201610092405 A CN 201610092405A CN 107102937 B CN107102937 B CN 107102937B
- Authority
- CN
- China
- Prior art keywords
- test
- multimedia
- application
- tested
- file
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 394
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000013515 script Methods 0.000 claims abstract description 47
- 238000012544 monitoring process Methods 0.000 claims description 19
- 238000004088 simulation Methods 0.000 claims 2
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
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
本发明实施例公开了一种用户界面测试方法,所述方法包括:在测试终端中执行预设的测试脚本中的测试指令对被测应用的用户界面进行自动化测试;在进行自动化测试过程中拦截被测应用发出的多媒体文件请求;根据拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,以使所述被测应用根据所述多媒体测试文件的资源访问路径打开所述多媒体测试文件。本发明实施例还公开了一种用户界面测试装置。采用本发明,可保证用户界面测试过程的准确性和一致性。
Description
技术领域
本发明涉及应用测试领域,尤其涉及一种用户界面测试方法和装置。
背景技术
随着自动化测试技术的普及,对应用程序进行测试逐渐由人工测试转为UI(UserInterface,用户界面)自动化测试。UI自动化测试,即由设备通过测试工具执行预设测试脚本,模拟用户针对被测应用UI的操作,从而对被测应用的功能及性能进行自动化的测试。
现有的UI自动化测试方案中,当UI自动化测试步骤涉及到需要被测应用打开某个多媒体文件时,都需要到测试设备的存储介质中选择一张多媒体文件,但每个测试设备内的多媒体文件资源目录结构经常存在差异,例如在不同厂商的手机中系统图库或系统相册的展示效果经常存在较大差异,因此在测试过程中通过现有的模拟点击操作指令通常无法准确找到指定的多媒体文件,给自动化测试带来很大不确定性。
发明内容
本发明实施例所要解决的技术问题在于,提供一种用户界面测试方法和装置,可保证用户界面测试过程的准确性和一致性。
为了解决上述技术问题,本发明实施例提供了一种用户界面测试方法,所述方法包括:
在测试终端中执行预设的测试脚本中的测试指令对被测应用的用户界面进行自动化测试;
在进行自动化测试过程中拦截被测应用发出的多媒体文件请求;
根据拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,以使所述被测应用根据所述多媒体测试文件的资源访问路径打开所述多媒体测试文件。
相应地,本发明实施例还提供了一种用户界面测试装置,包括:
测试文件存储模块,用于在测试终端中存储测试脚本和多媒体测试文件,并记录所述多媒体测试文件在所述测试终端的资源访问路径;
应用测试模块,用于在测试终端中执行预设的测试脚本中的测试指令对被测应用的用户界面进行自动化测试;
文件请求拦截模块,用于在所述应用测试模块进行自动化测试过程中拦截被测应用发出的多媒体文件请求;
测试文件返回模块,用于根据文件请求拦截模块拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,以使所述被测应用根据所述资源访问路径打开所述多媒体测试文件。
本发明实施例通过拦截被测应用发出的多媒体文件请求,并将预设的多媒体测试文件的资源访问路径返回给被测应用,使得被测应用在自动化测试过程中可以打开指定的多媒体测试文件,不再会受到测试终端资源管理架构或界面显示布局的影响,从而保证用户界面测试过程的准确性和一致性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种用户界面测试方法流程示意图;
图2是本发明实施例中的用户界面测试脚本的录制方法流程示意图;
图3是本发明实施例中拦截被测应用发出的多媒体文件请求的示意图;
图4是本发明实施例中录制多媒体文件请求并且获取多媒体测试文件的示意图;
图5是本发明实施例中的一种用户界面测试装置的结构示意图;
图6是本发明另一实施例中的用户界面测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中的用户界面测试方法,可以由本发明实施例中测试终端中的用户界面测试装置执行,本发明实施例中的用户界面测试装置可以为运行在测试终端中的测试工具,其预先设置有测试脚本和多媒体测试文件。
图1是本发明实施例中的一种用户界面测试方法流程示意图,如图所示本实施例中的用户界面测试方法流程可以包括:
S101,在测试终端中执行预设的测试脚本中的测试指令对被测应用的用户界面进行自动化测试。
所述被测应用可以为当前运行在测试终端中的应用程序,其用户界面显示在测试终端的显示屏幕上,本发明实施例中的用户界面测试装置可以通过执行预设的测试脚本中的测试指令,模拟用户点击被测应用的用户界面中的界面对象从而向被测应用输入对应的操作指令,被测应用在接收到对应的操作指令后会进行相应的响应,从而可以反映被测应用的功能及性能。
S102,在进行自动化测试过程中拦截被测应用发出的多媒体文件请求。
具体实现中,在执行测试脚本对被测应用的用户界面进行自动化测试过程中,本发明实施例中的用户界面测试装置可以通过监听被测应用向操作系统发出的进程消息,从而拦截其发出的多媒体文件请求。示例性的,用户界面测试装置可以通过hook(钩子)机制监听并拦截被测应用向操作系统发出的多媒体文件请求,所述多媒体文件请求可以为被测应用向操作系统发出携带多媒体类型标识的intent消息,当用户界面测试装置监听到被测应用向操作系统发出携带多媒体类型标识的intent消息,则确定其为多媒体文件请求并进行拦截,从而该多媒体文件请求无法发送至操作系统。所述多媒体类型标识示例性的可以包括“audio”(音频文件)、“video”(视频文件)或“image”(图片文件)中的任一种。所述hook机制,可以为通过预先安装的自定义hook工具对操作系统发生的特定事件进行监听的方法。
S103,根据拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,以使所述被测应用根据所述资源访问路径打开所述多媒体测试文件。
所述多媒体测试文件可以为本发明实施例中的用户界面测试装置预先保存在测试终端中的多媒体文件,例如可以包括图片测试文件、视频测试文件或音频测试文件,用户界面测试装置保存所述多媒体测试文件时,记录多媒体测试文件在所述测试终端中的资源访问路径,在可选实施例中,所述测试脚本中可以指定所述多媒体测试文件在所述测试终端中的资源访问路径,用户界面测试装置按照测试脚本中指定的资源访问路径在测试终端中保存所述多媒体测试文件。本发明实施例中的用户界面测试装置拦截下被测应用在自动化测试过程中发出的多媒体文件请求后,根据拦截到的多媒体文件请求,向被测应用返回对应的多媒体测试文件的资源访问路径,例如若被测应用请求的是图片文件,则用户界面测试装置向被测应用返回预设的图片测试文件,若被测应用请求的是音频文件,则用户界面测试装置向被测应用返回预设的音频测试文件,等等。所述多媒体测试文件的资源访问路径,可以为预先保存在测试终端中的多媒体测试文件的URL(Uniform ResourceLocator,统一资源定位符),由于不管在什么类型或厂商生产的测试设备中保存多媒体文件的存储介质对应的URL的定位规则都是一定的,因此只要约定预先将多媒体测试文件保存在测试设备中的指定路径下,在测试过程中的被测应用都可以通过对应的URL在测试设备中找到对应的多媒体测试文件,进而打开该多媒体测试文件。
例如图3中所示的测试场景,用户界面测试装置执行测试脚本中的测试指令,模拟用户点击图3的用户界面中的“上传图片”按钮,被测应用根据该测试点击操作指令向操作系统发出图片调用请求,若未被拦截,操作系统可以根据被测应用发出的图片调用请求向被测应用返回图库的浏览界面,让被测应用在图库中选取调用图片,但是本实施例中用户界面测试装置通过hook机制监听到被测应用向操作系统发出的intent消息中携带“image”标识,确认该消息是图片文件请求,从而拦截下来。进而用户界面测试装置向被测应用返回预设的图片测试文件的资源访问路径,以使所述被测应用根据所述资源访问路径打开所述图片测试文件,如图3右侧所示为图片打开效果。
本发明实施例中的用户界面测试装置通过拦截被测应用发出的多媒体文件请求,并将对应的多媒体测试文件在测试终端中的资源访问路径返回给被测应用,使得被测应用在自动化测试过程中可以打开指定的多媒体测试文件,不再会受到测试终端资源管理架构或界面显示布局的影响,从而保证用户界面测试过程的准确性和一致性。
图2是本发明实施例中的用户界面测试脚本的录制方法流程示意图,本发明实施例中的用户界面测试脚本的录制流程可以发生在如图1所示的如图所示的用户界面测试流程之前,在可选实施例中,测试脚本的录制和执行可以在不同的设备终端中实施,例如测试人员在终端A中录制用户界面测试脚本,后续在终端A之外的多个测试终端中分别针对同一被测应用进行图1所示的用户界面测试方法流程。如图2所示本发明实施例中用户界面测试脚本的录制流程可以包括:
S201,在操作终端中监听针对所述被测应用的用户界面中界面对象的点击操作,同时监听所述被测应用根据所述点击操作发出的多媒体文件请求。
具体实现中,测试人员可以在具备触摸屏的操作终端上使用手指或触控装置触发被测应用的用户界面中界面对象的点击操作,也可以在非触屏设备上通过鼠标、键盘或遥控器等触发被测应用的用户界面中界面对象的点击操作。示例性的,当测试人员点击被测应用的用户界面上的某个按钮时,测试工具可以得到本次点击操作的屏幕坐标(xxx,yyy),进而根据该屏幕坐标可以找到点击操作在被测应用的用户界面上的哪个控件,然后生成点击的自动化代码click(controler信息),该点击的自动化代码可以包括事件类型和界面对象参数,以便后续测试终端在执行该点击的自动化代码时,可以对被测应用的用户界面上的同一按钮进行模拟点击操作。在另一示例中,操作终端根据测试人员的点击操作产生点击事件,并且该点击事件会传递给被测应用的用户界面中的界面对象,例如测试人员通过触控屏触发点击事件,会产生touch事件;若测试人员通过鼠标等触发点击事件,则可以产生click事件。在操作终端的操作系统,上述点击事件会触发相应的函数调用,该函数中包含操作系统可以获得的该点击事件的相关参数,包括点击的界面对象参数以及事件类型(长按、短按、连击、滑动、单点触控、多点触控等)。本发明实施例中的用户界面测试装置可以在通过Hook机制监听得到操作系统对点击事件的函数调用,并从该函数中的点击的界面对象参数获得点击事件针对的界面对象,所述界面对象参数可以唯一标记界面对象,例如可以包括界面对象标识,如控件ID,还可以包括对象名称、对象类型等。被测应用根据所述点击操作会作出响应,用户界面测试装置监听被测应用发出的响应信息,若监听到到被测应用向操作系统发出的intent消息中携带“image”、“video”或“image”标识等,则可以确认该消息是多媒体文件请求。
S202,根据监听到的点击操作,生成所述针对所述被测应用的测试脚本中的测试指令。
具体实现中,用户界面测试装置每当监听到一次针对所述被测应用的用户界面中界面对象的点击操作,即可得到一条对应的测试指令,若测试人员在录制过程中输入多次针对被测应用的用户界面中界面对象的点击操作,则可以获得一系列测试指令,并根据点击操作的顺序将一系列测试指令组成测试脚本。
示例性的,假设测试人员依次点击了用户界面的主页面的控件1、控件1对应子页面的控件2以及控件1对应子页面中的控件3,则用户界面测试装置可以获取到控件1-控件3的界面对象参数,由此得到依次点击控件1->控件2->控件3的测试指令。
S203,根据监听到的多媒体文件请求,获取所述被测应用发出的多媒体文件请求所请求的多媒体文件在所述操作终端中的资源访问路径。
例如图4所示的录制多媒体文件请求过程中,测试人员点击图4的用户界面中的“上传图片”按钮,进而从系统返回的图库界面中选择打开一张图片,本发明实施例中的用户界面测试装置通过监听这一过程从而可以捕捉到所述被测应用发出的图片文件请求所请求的图片文件的资源访问路径(URL)。
S204,根据获取得到的所述多媒体文件在所述操作终端中的资源访问路径,加载所述多媒体文件作为多媒体测试文件。
具体实现中,用户界面测试装置可以根据在测试脚本录制过程中获取到的被测应用发出的多媒体文件请求所请求的多媒体文件的访问路径,找到被请求的多媒体文件的实际存储地址,从而将该多媒体文件加载到测试资源集合中(例如预设的文件夹),作为后续自动化测试过程中使用的多媒体测试文件。
S205,在所述测试终端中保存针对所述被测应用的测试脚本和所述多媒体测试文件,并记录所述多媒体测试文件在所述测试终端的资源访问路径。在可选实施例中,所述测试脚本中可以指定所述多媒体测试文件在所述测试终端中的资源访问路径,用户界面测试装置按照测试脚本中指定的资源访问路径在测试终端中保存所述多媒体测试文件。即将测试脚本以及测试资源集合中的多媒体测试文件均存放(或安装)至测试终端中,以便完成如图1中所示的用户界面自动化测试。
图5是本发明实施例中的一种用户界面测试装置的结构示意图,可以实现在冯若依曼体系的计算机系统之上,例如可以以计算机程序的形式运行,该计算机程序可集成在应用中,也可作为独立的工具类应用运行。该计算机系统可以是个人电脑、平板电脑、笔记本电脑、掌上电脑、智能手机等具有触控功能的终端设备,也可以以后台服务器的形式实施。如图5所示本发明实施例中的用户界面测试装置至少可以包括:
测试文件存储模块500,用于在测试终端中存储测试脚本和多媒体测试文件,并记录所述多媒体测试文件在所述测试终端的资源访问路径。
所述多媒体测试文件可以包括图片测试文件、视频测试文件或音频测试文件。在可选实施例中,所述测试脚本中可以指定所述多媒体测试文件在所述测试终端中的资源访问路径,测试文件存储模块500按照测试脚本中指定的资源访问路径在测试终端中保存所述多媒体测试文件。
应用测试模块510,用于在测试终端中执行预设的测试脚本中的测试指令对被测应用的用户界面进行自动化测试。
具体实现中,所述被测应用可以为当前运行在测试终端中的应用程序,其用户界面显示在测试终端的显示屏幕上,应用测试模块520可以通过执行预设的测试脚本中的测试指令,模拟用户点击被测应用的用户界面中的界面对象从而向被测应用输入对应的操作指令,被测应用在接收到对应的操作指令后会进行相应的响应,从而可以反映被测应用的功能及性能。
文件请求拦截模块520,用于在所述应用测试模块进行自动化测试过程中拦截被测应用发出的多媒体文件请求。
在应用测试模块510执行测试脚本对被测应用的用户界面进行自动化测试过程中,文件请求拦截模块520可以通过监听被测应用向操作系统发出的进程消息,从而拦截其发出的多媒体文件请求。示例性的,文件请求拦截模块530可以通过hook(钩子)机制监听并拦截被测应用向操作系统发出的多媒体文件请求,所述多媒体文件请求可以为被测应用向操作系统发出携带多媒体类型标识的intent消息,当文件请求拦截模块520监听到被测应用向操作系统发出携带多媒体类型标识的intent消息,则确定其为多媒体文件请求并进行拦截,从而该多媒体文件请求无法发送至操作系统。所述多媒体类型标识示例性的可以包括“audio”(音频文件)、“video”(视频文件)或“image”(图片文件)中的任一种。
测试文件返回模块530,用于根据文件请求拦截模块拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,以使所述被测应用根据所述资源访问路径打开所述多媒体测试文件。
在文件请求拦截模块520拦截下被测应用在自动化测试过程中发出的多媒体文件请求后,测试文件返回模块530可以根据拦截到的多媒体文件请求,向被测应用返回预先记录得到的所述多媒体文件请求对应的多媒体测试文件在所述测试终端中的资源访问路径,例如若被测应用请求的是图片文件,则测试文件返回模块530向被测应用返回预设的图片测试文件,若被测应用请求的是音频文件,则测试文件返回模块530向被测应用返回预设的音频测试文件,等等。所述多媒体测试文件的资源访问路径,可以为预先保存在测试终端中的多媒体测试文件的URL(Uniform Resource Locator,统一资源定位符),由于在任意类型或厂商生产的测试设备中保存多媒体文件的存储介质对应的URL的定位规则都是一定的,因此只要约定预先将多媒体测试文件保存在测试设备中的指定路径下,在测试过程中的被测应用都可以通过对应的URL在测试设备中找到对应的多媒体测试文件,进而打开该多媒体测试文件。
进而在可选实施例中,用户界面测试装置进一步还可以包括:
测试脚本录制模块540,用于在操作终端中监听针对所述被测应用的用户界面中界面对象的点击操作,根据监听到的点击操作,生成针对所述被测应用的测试脚本中的测试指令。
具体实现中,测试人员可以在具备触摸屏的操作终端上使用手指或触控装置触发被测应用的用户界面中界面对象的点击操作,也可以在非触屏设备上通过鼠标、键盘或遥控器等触发被测应用的用户界面中界面对象的点击操作。示例性的,当测试人员点击被测应用的用户界面上的某个按钮时,测试工具可以得到本次点击操作的屏幕坐标(xxx,yyy),进而根据该屏幕坐标可以找到点击操作在被测应用的用户界面上的哪个控件,然后生成点击的自动化代码click(controler信息),该点击的自动化代码可以包括事件类型和界面对象参数,以便后续测试终端在执行该点击的自动化代码时,可以对被测应用的用户界面上的同一按钮进行模拟点击操作。在另一示例中,操作终端根据测试人员的点击操作产生点击事件,并且该点击事件会传递给被测应用的用户界面中的界面对象,例如测试人员通过触控屏触发点击事件,会产生touch事件;若测试人员通过鼠标等触发点击事件,则可以产生click事件。在操作终端的操作系统,上述点击事件会触发相应的函数调用,该函数中包含操作系统可以获得的该点击事件的相关参数,包括点击的界面对象参数以及事件类型(长按、短按、连击、滑动、单点触控、多点触控等)。测试脚本录制模块540可以在通过Hook机制监听得到操作系统对点击事件的函数调用,并从该函数中的点击的界面对象参数获得点击事件针对的界面对象,所述界面对象参数可以唯一标记界面对象,例如可以包括界面对象标识,如控件ID,还可以包括对象名称、对象类型等。进而,测试脚本录制模块540每当监听到一次针对所述被测应用的用户界面中界面对象的点击操作,即可由此得到一条对应的测试指令,若测试人员在录制过程中输入多次针对被测应用的用户界面中界面对象的点击操作,则可以获得一系列测试指令,并根据点击操作的顺序将一系列测试指令组成测试脚本。
示例性的,假设测试人员依次点击了用户界面的主页面的控件1、控件1对应子页面的控件2以及控件1对应子页面中的控件3,则用户界面测试装置可以获取到控件1-控件3的界面对象参数,由此得到依次点击控件1->控件2->控件3的测试指令。
测试文件加载模块550,用于在操作终端中监听针对所述被测应用的用户界面中界面对象的点击操作的同时,监听所述被测应用根据所述点击操作发出的多媒体文件请求,根据监听到的多媒体文件请求,获取所述被测应用发出的多媒体文件请求所请求的在所述操作终端中多媒体文件的资源访问路径,根据获取得到的所述多媒体文件的资源访问路径,加载所述多媒体文件作为多媒体测试文件。
被测应用根据所述点击操作会作出响应,测试文件加载模块550监听被测应用发出的响应信息,若监听到到被测应用向操作系统发出的intent消息中携带“image”、“video”或“image”标识等,则可以确认该消息是多媒体文件请求。例如图4所示的录制多媒体文件请求过程中,测试人员点击图4的用户界面中的“上传图片”按钮,进而从系统返回的图库界面中选择打开一张图片,测试文件加载模块550从而可以通过监听这一过程从而可以捕捉到所述被测应用发出的图片文件请求所请求的图片文件的资源访问路径(URL)。进而可以根据获取到的被测应用发出的多媒体文件请求所请求的多媒体文件的访问路径,找到被请求的多媒体文件的实际存储地址,从而将该多媒体文件加载到测试资源集合中(例如预设的文件夹),作为后续自动化测试过程中使用的多媒体测试文件,并且生成对应的测试代码,后续在测试终端中进行自动化测试之前,需要将测试代码、测试脚本以及测试资源集合中的多媒体测试文件均存放(或安装)至测试终端中,以便完成如图1中所示的用户界面自动化测试。
本发明实施例中的用户界面测试装置通过拦截被测应用发出的多媒体文件请求,并将对应的多媒体测试文件在测试终端中的资源访问路径返回给被测应用,使得被测应用在自动化测试过程中可以打开指定的多媒体测试文件,不再会受到测试终端资源管理架构或界面显示布局的影响,从而保证用户界面测试过程的准确性和一致性。
图6展示了一种执行上述用户界面测试方法的基于冯诺依曼体系的计算机系统,即另一实施例中的用户界面测试装置。该计算机系统可以是智能手机、平板电脑、掌上电脑,笔记本电脑或个人电脑等终端设备。具体的,可包括通过系统总线连接的输入输出接口610、处理器620、存储器630。其中,输入输出接口610可包括输入接口611,输出接口612,可选的还可以包括网络接口613,其中输入接口611可包括触控屏、鼠标、键盘或遥控信号接收装置。存储器630可包括外存储器631(例如硬盘、光盘或软盘等)和内存储器632。
在本实施例中,本方法的运行可以基于计算机程序,该计算机程序的程序文件(包括本发明实施例中提及的测试脚本)和预设的多媒体测试文件可以存储于前述基于冯诺依曼体系的计算机系统的外存储器631中,其中程序文件在运行时被加载到内存储器632中,然后被编译为机器码之后传递至处理器620中执行,从而使得基于冯诺依曼体系的计算机系统中形成前述逻辑上的应用测试模块510、文件请求拦截模块520、测试文件返回模块530、测试脚本录制模块540、以及测试文件加载模块550。且在上述实施例中用户界面测试方法的执行过程中,输入的参数和指令均通过输入接口611接收,并传递至内存储器632中缓存,然后输入到处理器620中进行处理,处理的结果数据或缓存于内存储器632中进行后续地处理,或被传递至输出接口612或网络接口613进行输出。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (14)
1.一种用户界面测试方法,其特征在于,所述方法包括:
在操作终端中监听针对被测应用的用户界面中界面对象的点击操作;
在所述操作终端中监听针对所述被测应用的用户界面中界面对象的点击操作的同时,监听所述被测应用根据所述点击操作发出的多媒体文件请求;
根据监听到的多媒体文件请求,获取所述被测应用发出的多媒体文件请求所请求的多媒体文件在所述操作终端中的资源访问路径;
根据获取得到的所述多媒体文件在所述操作终端中的资源访问路径,加载所述多媒体文件作为多媒体测试文件;
按照指定的资源访问路径在测试终端中保存所述多媒体测试文件,所述指定的资源访问路径为预先保存在所述测试终端的测试脚本中的多媒体测试文件的URL;
在所述测试终端中执行所述测试脚本中的测试指令对被测应用的用户界面进行自动化测试;
在进行自动化测试过程中拦截被测应用发出的多媒体文件请求,所述多媒体文件请求是所述被测应用在接收到针对用户界面中的界面对象模拟输入的操作指令后发出的;
根据在进行自动化测试过程中拦截到的多媒体文件请求,向被测应用返回所述指定的资源访问路径,以使所述被测应用根据所述多媒体测试文件的资源访问路径打开所述多媒体测试文件。
2.如权利要求1所述的用户界面测试方法,其特征在于,所述根据在进行自动化测试过程中拦截到的多媒体文件请求,向被测应用返回所述指定的资源访问路径包括:
获取所述被测应用发出的多媒体文件请求所请求的多媒体类型;
向被测应用返回预先记录得到的所述多媒体类型对应的多媒体测试文件在所述测试终端中的资源访问路径。
3.如权利要求1所述的用户界面测试方法,其特征在于,所述在进行自动化测试过程拦截中被测应用发出的多媒体文件请求包括:
通过hook机制监听并拦截被测应用向操作系统发出的多媒体文件请求。
4.如权利要求3所述的用户界面测试方法,其特征在于,所述多媒体文件请求包括携带多媒体类型标识的intent消息;
所述通过hook机制监听被测应用向操作系统发出的多媒体文件请求包括:
通过hook机制监听并拦截被测应用向操作系统发出的携带多媒体类型标识的intent消息。
5.如权利要求1所述的用户界面测试方法,其特征在于,所述在所述测试终端中执行所述测试脚本中的测试指令对被测应用的用户界面进行自动化测试之前还包括:
根据监听到的点击操作,生成针对所述被测应用的测试脚本中的测试指令;
在所述测试终端中保存针对所述被测应用的测试脚本。
6.如权利要求1-5中任一项所述的用户界面测试方法,其特征在于,所述多媒体测试文件包括图片测试文件、视频测试文件或音频测试文件。
7.一种用户界面测试装置,其特征在于,包括:
测试文件加载模块,用于在操作终端中监听针对被测应用的用户界面中界面对象的点击操作;以及在所述操作终端中监听针对所述被测应用的用户界面中界面对象的点击操作的同时,监听所述被测应用根据所述点击操作发出的多媒体文件请求,根据在进行自动化测试过程中监听到的多媒体文件请求,获取所述被测应用发出的多媒体文件请求所请求的在所述操作终端中多媒体文件的资源访问路径,根据获取得到的所述多媒体文件的资源访问路径,加载所述多媒体文件作为多媒体测试文件;
测试文件存储模块,用于在测试终端中存储测试脚本,以及按照指定的资源访问路径在测试终端中保存所述多媒体测试文件,所述指定的资源访问路径为预先保存在所述测试终端的测试脚本中的多媒体测试文件的URL;
应用测试模块,用于在所述测试终端中执行所述测试脚本中的测试指令对被测应用的用户界面进行自动化测试;
文件请求拦截模块,用于在所述应用测试模块进行自动化测试过程中拦截被测应用发出的多媒体文件请求,所述多媒体文件请求是所述被测应用在接收到针对用户界面中的界面对象模拟输入的操作指令后发出的;
测试文件返回模块,用于根据文件请求拦截模块在进行自动化测试过程中拦截到的多媒体文件请求,向被测应用返回所述指定的资源访问路径,以使所述被测应用根据所述资源访问路径打开所述多媒体测试文件。
8.如权利要求7所述的用户界面测试装置,其特征在于,所述测试文件返回模块用于:
获取所述被测应用发出的多媒体文件请求所请求的多媒体类型,向被测应用返回测试终端中预设的所述多媒体类型对应的多媒体测试文件的资源访问路径。
9.如权利要求7所述的用户界面测试装置,其特征在于,所述文件请求拦截模块用于:
通过hook机制监听并拦截被测应用向操作系统发出的多媒体文件请求。
10.如权利要求9所述的用户界面测试装置,其特征在于,所述多媒体文件请求包括携带多媒体类型标识的intent消息;
所述文件请求拦截模块具体用于:
通过hook机制监听并拦截被测应用向操作系统发出的携带多媒体类型标识的intent消息。
11.如权利要求7所述的用户界面测试装置,其特征在于,还包括:
测试脚本录制模块,用于根据监听到的点击操作,生成针对所述被测应用的测试脚本中的测试指令。
12.如权利要求7-11中任一项所述的用户界面测试装置,其特征在于,所述多媒体测试文件包括图片测试文件、视频测试文件或音频测试文件。
13.一种用户界面测试装置,其特征在于,包括输入输出接口、处理器和存储器,所述处理器用于调用所述存储器中存储的程序来执行权利要求1至6中任一项所述的用户界面测试方法。
14.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有指令,当所述指令在处理器上运行时,使得所述处理器执行权利要求1至6中任一项所述的用户界面测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610092405.1A CN107102937B (zh) | 2016-02-19 | 2016-02-19 | 一种用户界面测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610092405.1A CN107102937B (zh) | 2016-02-19 | 2016-02-19 | 一种用户界面测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107102937A CN107102937A (zh) | 2017-08-29 |
CN107102937B true CN107102937B (zh) | 2021-03-02 |
Family
ID=59658248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610092405.1A Active CN107102937B (zh) | 2016-02-19 | 2016-02-19 | 一种用户界面测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107102937B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008118B (zh) * | 2019-03-13 | 2023-03-10 | 深圳壹账通智能科技有限公司 | 页面数据测试方法、装置、计算机设备和存储介质 |
CN110750451A (zh) * | 2019-09-23 | 2020-02-04 | 惠州市德赛西威汽车电子股份有限公司 | 一种车载多媒体ui素材自动识别检测系统及方法 |
CN111984535B (zh) * | 2020-08-12 | 2024-01-26 | 浪潮软件集团有限公司 | 在软件测试中自动获取单点性能测试结果的方法及系统 |
CN114546820B (zh) * | 2020-11-24 | 2022-12-30 | 华为技术有限公司 | 一种应用程序的调试方法及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902619A (zh) * | 2011-07-29 | 2013-01-30 | 阿里巴巴集团控股有限公司 | Web应用程序的回归测试方法和装置 |
CN103218677A (zh) * | 2012-01-20 | 2013-07-24 | 广州从兴电子开发有限公司 | 流程自动化调度控制方法、装置及系统 |
CN103679031A (zh) * | 2013-12-12 | 2014-03-26 | 北京奇虎科技有限公司 | 一种文件病毒免疫的方法和装置 |
CN103729294A (zh) * | 2013-12-30 | 2014-04-16 | 金蝶软件(中国)有限公司 | 应用软件性能脚本测试方法与装置 |
US8850514B2 (en) * | 2012-05-01 | 2014-09-30 | Red Hat, Inc. | Cartridges in a multi-tenant platforms-as-a-service (PaaS) system implemented in a cloud computing environment |
CN104200161A (zh) * | 2014-08-05 | 2014-12-10 | 杭州安恒信息技术有限公司 | 一种实现沙箱智能检测文件的方法及其沙箱智能检测系统 |
WO2014209359A1 (en) * | 2013-06-28 | 2014-12-31 | Hewlett-Packard Development Company, L.P. | Hook framework |
CN104834835A (zh) * | 2015-05-13 | 2015-08-12 | 武汉大学 | 一种Windows平台下的通用数字版权保护方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101115068B (zh) * | 2007-07-19 | 2010-12-29 | 潘晓梅 | 在客户端调整网页显示内容的方法及系统 |
CN101645815B (zh) * | 2008-08-06 | 2013-05-08 | 百度在线网络技术(北京)有限公司 | 音视频文件下载提示方法 |
US8566713B2 (en) * | 2009-08-20 | 2013-10-22 | Samsung Electronics Co., Ltd. | Data transfer method and system |
US9015676B2 (en) * | 2010-10-29 | 2015-04-21 | International Business Machines Corporation | Varying removal of internal breakpoints during debugging of code |
CN103761241B (zh) * | 2013-12-13 | 2019-02-05 | 北京奇虎科技有限公司 | 一种图片数据的上传方法和浏览器 |
CN104991916B (zh) * | 2015-06-24 | 2019-03-01 | 小米科技有限责任公司 | 网页的加载方法及装置 |
-
2016
- 2016-02-19 CN CN201610092405.1A patent/CN107102937B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902619A (zh) * | 2011-07-29 | 2013-01-30 | 阿里巴巴集团控股有限公司 | Web应用程序的回归测试方法和装置 |
CN103218677A (zh) * | 2012-01-20 | 2013-07-24 | 广州从兴电子开发有限公司 | 流程自动化调度控制方法、装置及系统 |
US8850514B2 (en) * | 2012-05-01 | 2014-09-30 | Red Hat, Inc. | Cartridges in a multi-tenant platforms-as-a-service (PaaS) system implemented in a cloud computing environment |
WO2014209359A1 (en) * | 2013-06-28 | 2014-12-31 | Hewlett-Packard Development Company, L.P. | Hook framework |
CN103679031A (zh) * | 2013-12-12 | 2014-03-26 | 北京奇虎科技有限公司 | 一种文件病毒免疫的方法和装置 |
CN103729294A (zh) * | 2013-12-30 | 2014-04-16 | 金蝶软件(中国)有限公司 | 应用软件性能脚本测试方法与装置 |
CN104200161A (zh) * | 2014-08-05 | 2014-12-10 | 杭州安恒信息技术有限公司 | 一种实现沙箱智能检测文件的方法及其沙箱智能检测系统 |
CN104834835A (zh) * | 2015-05-13 | 2015-08-12 | 武汉大学 | 一种Windows平台下的通用数字版权保护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107102937A (zh) | 2017-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102150774B1 (ko) | 단말기 애플리케이션을 로딩하기 위한 방법 및 장치 | |
CN108345543B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
US9342237B2 (en) | Automated testing of gesture-based applications | |
CN108804302B (zh) | 一种远程测试方法、系统及相关设备 | |
US20190227917A1 (en) | Adaptive system for mobile device testing | |
US9280451B2 (en) | Testing device | |
CN105302722B (zh) | Cts自动测试方法及装置 | |
CN107688529B (zh) | 组件调试方法和装置 | |
CN111428166A (zh) | 页面配置方法、页面元素替换方法、装置、设备及介质 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN107102937B (zh) | 一种用户界面测试方法和装置 | |
CN111414309B (zh) | 应用程序的自动化测试方法、计算机设备和存储介质 | |
CN104571916B (zh) | 一种执行终端操作信息的方法及装置 | |
CN110597709B (zh) | 混合模式移动应用的交互调试方法、装置和计算机设备 | |
CN112465466A (zh) | 流程任务执行方法、装置、计算机设备和存储介质 | |
CN111694550B (zh) | 一种页面显示控制方法、装置及系统 | |
CN111666199A (zh) | 在智能终端上执行的调试方法以及软件调试器 | |
CN112231206A (zh) | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 | |
CN109995931B (zh) | 一种实现自动呼叫的方法及装置 | |
CN105339974B (zh) | 模拟传感器 | |
CN113672826B (zh) | 页面跳转方法、装置、计算机设备和存储介质 | |
CN110874143A (zh) | 传感器数据获取方法、智能终端、存储介质及电子设备 | |
CN107391354B (zh) | 自动监测终端性能的方法及系统、存储装置 | |
WO2015039585A1 (en) | Method and device for testing software reliability | |
CN113590564B (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 |