CN106294099A - 一种测试方法及设备 - Google Patents

一种测试方法及设备 Download PDF

Info

Publication number
CN106294099A
CN106294099A CN201510250889.3A CN201510250889A CN106294099A CN 106294099 A CN106294099 A CN 106294099A CN 201510250889 A CN201510250889 A CN 201510250889A CN 106294099 A CN106294099 A CN 106294099A
Authority
CN
China
Prior art keywords
picture
target software
user interface
test
described target
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
CN201510250889.3A
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510250889.3A priority Critical patent/CN106294099A/zh
Publication of CN106294099A publication Critical patent/CN106294099A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请实施例涉及计算机技术领域,特别涉及一种进行自动测试和测试调度的方法及设备,用以解决现有技术中存在的UI自动化框架测试效率比较低,稳定性比较差的问题。本申请实施例从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,并根据选择的图片对应的操作,在所述用户界面上进行测试,其中所述图片为需要测试的用户界面中的控件的截图。由于能够通过图像匹配方式定位控件,在属性发生变化、软件页面加载延时等情况出现时也不会定位控件失败,从而提高了UI自动化框架测试效率以及稳定性。

Description

一种测试方法及设备
技术领域
本申请涉及计算机技术领域,特别涉及一种测试方法及设备。
背景技术
由于无线端业务的飞速发展,无线端APP(Application,应用)的质量保证工作变得尤为重要,很多大型公司开始研究无线端的UI自动化框架来降低人力测试成本。
UI(User interface,用户界面)测试的目的是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能,确保用户界面符合公司或行业的标准。通过UI测试来核实用户与软件的交互。UI测试的目标在于确保用户界面向用户提供了适当的访问和浏览测试对象功能的操作。除此之外,UI测试还要确保UI功能内部的对象符合预期要求。
UI测试具体包括测试用户界面的功能模块的布局是否合理、整体风格是否一致以及各个控件的放置位置是否符合客户使用习惯,更重要的是要符合操作便捷,导航简单易懂,界面中文字是否正确,命名是否统一,页面是否美观,文字、图片组合是否完美等。
目前市面上UI自动化框架测试有阿里巴巴开发的Sword框架。Sword框架是通过解析软件的属性进行控件定位。但是如果属性发生变化会出现、软件页面加载延时等情况出现,会造成无法定位到需要测试的属性,这时就需要人工进行定位,从而降低UI自动化测试的效率。
综上所述,目前UI自动化框架测试效率比较低,稳定性比较差。
发明内容
本申请实施例提供一种测试方法及设备,用以解决现有技术中存在的UI自动化框架测试效率比较低,稳定性比较差的问题。
一方面,本申请实施例提供的一种测试方法,该方法包括:
从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试。
由于能够通过图像匹配方式定位控件,在属性发生变化、软件页面加载延时等情况出现时也不会定位控件失败,从而提高了UI自动化框架测试效率以及稳定性。
可选的,确定选择的图片对应的操作,包括:
根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。
由于能够根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作,从而能够准确确定选择的图片对应的操作。
可选的,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
确定所述目标软件在支持所述目标软件的设备上运行。
由于在确定所述目标软件在支持所述目标软件的设备上运行后,进行图片匹配,从而增加了测试的应用场景。
可选的,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
若确定所述目标软件需要在支持所述目标软件的模拟器中运行,从支持所述目标软件的模拟器中运行所述目标软件。
由于在确定所述目标软件需要在支持所述目标软件的模拟器中运行后,能够从支持所述目标软件的模拟器中运行所述目标软件,不需要人工手动运行,从而增加了测试的效率。
可选的,从支持所述目标软件的模拟器中运行所述目标软件之前,还包括:
确定所述目标软件的安装程序的存储路径;
根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件。
由于能够自动安装所述目标软件,从而增加了测试的效率。
可选的,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,用以进行自动测试。
另一方面,本申请实施例提供的一种测试设备,该设备包括:
选择模块,用于从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
处理模块,用于确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试。
可选的,所述处理模块具体用于:
在确定选择的图片对应的操作时,根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。
可选的,所述选择模块还用于:
在确定所述目标软件在支持所述目标软件的设备上运行后,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
可选的,所述选择模块还用于:
从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,若确定所述目标软件需要在支持所述目标软件的模拟器中运行,从支持所述目标软件的模拟器中运行所述目标软件。
可选的,所述选择模块还用于:
确定所述目标软件的安装程序的存储路径;根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件;从支持所述目标软件的模拟器中运行所述目标软件。
可选的,所述设备还包括:
控制模块,用于在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,并根据所述代码信息控制所述选择模块和所述处理模块进行测试。
附图说明
图1为本申请实施例测试方法流程示意图;
图2为本申请实施例***框架示意图;
图3为本申请实施例另一种测试方法流程示意图;
图4为本申请实施例测试设备结构示意图。
具体实施方式
本申请实施例从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,并根据选择的图片对应的操作,在所述用户界面上进行测试,其中所述图片为需要测试的用户界面中的控件的截图。由于能够通过图像匹配方式定位控件,在属性发生变化、软件页面加载延时等情况出现时也不会定位控件失败,从而提高了UI自动化框架测试效率以及稳定性。
其中,本申请实施例的目标软件可以是支持IOS设备的软件;也可以是支持其他设备的软件。
下面结合说明书附图对本申请实施例作进一步详细描述。
如图1所示,本申请实施例测试方法包括:
步骤101、从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
步骤102、确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行操作。
本申请实施例预先将目标软件中需要测试的用户界面进行截图,一个用户界面可以有一个截图,也可以有多个截图。可选的,每个截图中至少包括一个控件。
比如用户界面中包括输入框、按钮等控件,可以截一个图将输入框和按钮都包含进去;也可以分别截两个图,一个包括输入框,一个包括按钮。
在进行测试时,由于测试环境不同,有可能目标软件需要在支持所述目标软件的设备上运行;也可能需要在所述模拟器中运行所述安装程序安装所述目标软件。而不同的测试环境后续处理过程是不同的。
基于此,在进行用户界面测试时,需要判断所述目标软件是否在支持所述目标软件的设备上运行。
具体目标软件是否在支持所述目标软件的设备上运行可以由人工预先配置的;也可以自动进行检测。
下面分别介绍下在支持所述目标软件的设备中运行所述目标软件和在支持所述目标软件的模拟器中运行所述目标软件的具体过程。
过程一、在支持所述目标软件的设备中运行所述目标软件。
如果确定在支持所述目标软件的设备中运行所述目标软件,可以直接从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
以IOS软件举例,在进行测试前需要用户先运行IOS软件,比如可以采用Veency+realVNC的方式将支持所述目标软件的设备投影到测试设备上,也就是现实测试设备能够控制将支持所述目标软件的设备上运行的IOS软件。之后就可以执行本申请实施例的方案。
当然,也可以由本申请实施例的执行主体从支持所述目标软件的设备上运行IOS软件。
在进行匹配时,如果预先配置的图片的分辨率和显示的用户界面的分辨率不一致,会降低匹配成功率,所以需要保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致。比如预先配置的图片的分辨率如果是1920*1080,则需要保证显示的用户界面的分辨率也是1920*1080。
由于在之前进行截图时,有可能是在支持所述目标软件的设备中运行目标软件后进行的截图,也可能是在支持所述目标软件的模拟器中运行所述目标软件后进行的截图。
如果在支持所述目标软件的设备中运行目标软件后进行的截图,不需要调整显示的用户界面的分辨率;
如果在支持所述目标软件的模拟器中运行所述目标软件后进行的截图,需要将显示的用户界面的分辨率调整成与所述模拟器的分辨率一致。
调整方式可以由人工继续调整,也可以自动调用设备中的配置选项进行调整。
在保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致后,就可以进行图片匹配。
图片匹配是将当前显示的用户界面和每一张预先配置的图片进行匹配。找到包括当前显示的全部或部分用户界面的图片。具体匹配方式有很多种,比如可以参见目前的图片匹配方式,也可以采用类似人脸识别的方式。
假设当前显示的用户界面中有“排序”按钮。由于之前在截图时会将需要测试的页面中的控件都进行截图,所以之前的截图中会有一个包含当前显示的用户界面中的“排序”按钮的图片,匹配的目的就是将这个图片找到。
在实施中,预先会配置图片和操作的对应关系,根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。由于每个图片都会包括至少一个控件,而不同的控件对应的操作不同。比如排序控件需要执行的操作是选择不同的排序规则(例如成交量排序、信用度排序等),并点击排序按钮;搜索控件需要执行的操作是在搜索框中输入搜索词,并点击搜索按钮。
基于此,需要为不同的图片配置对应的操作,这样当匹配到图片后,就知道在当前显示的用户界面上进行什么操作。
比如包含搜索控件的图片对应的操作是在搜索框中输入搜索词,并点击搜索按钮。在匹配到包含搜索控件的图片后,根据上述对应关系确定需要在搜索框中输入搜索词,并点击搜索按钮,并在当前显示的用户界面的搜索框中输入搜索词,并模拟点击搜索按钮,从而实现对当前显示的用户界面的搜索控件的测试。
过程二、在支持所述目标软件的模拟器中运行所述目标软件。
针对过程二,一种方式是人工将目标软件安装到支持所述目标软件的模拟器中,并运行。
为了进一步提高自动化效率,可以人工将目标软件安装到支持所述目标软件的模拟器中,由机器自动运行。
具体的,在确定在支持所述目标软件的模拟器中运行所述目标软件后,从支持所述目标软件的模拟器中运行所述目标软件。
可选的,除了机器自动运行,还可以由机器自动安装所述目标软件。
具体的,确定在支持所述目标软件的模拟器中运行所述目标软件后,确定所述目标软件的安装程序的存储路径;根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件,并从支持所述目标软件的模拟器中运行所述目标软件。
可选的,在安装所述目标软件时,将所述存储路径对应的软件提取出来,并通过Instruments开源框架里面提供的api接口,在所述模拟器中运行所述安装程序安装所述目标软件。
从支持所述目标软件的模拟器中运行所述目标软件之后,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
在进行匹配时,如果预先配置的图片的分辨率和显示的用户界面的分辨率不一致,会降低匹配成功率,所以需要保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致。比如预先配置的图片的分辨率如果是1920*1080,则需要保证显示的用户界面的分辨率也是1920*1080。
由于在之前进行截图时,有可能是在支持所述目标软件的设备中运行目标软件后进行的截图,也可能是在支持所述目标软件的模拟器中运行所述目标软件后进行的截图。
如果在支持所述目标软件的模拟器中运行目标软件后进行的截图,不需要调整显示的用户界面的分辨率;
如果在支持所述目标软件的设备中运行所述目标软件后进行的截图,需要将显示的用户界面的分辨率调整成与所述模拟器的分辨率一致。
调整方式可以由人工继续调整,也可以自动调用设备中的配置选项进行调整。
在保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致后,就可以进行图片匹配。
图片匹配是将当前显示的用户界面和每一张预先配置的图片进行匹配。找到包括当前显示的全部或部分用户界面的图片。具体匹配方式有很多种,比如可以参见目前的图片匹配方式,也可以采用类似人脸识别的方式。
假设当前显示的用户界面中有“排序”按钮。由于之前在截图时会将需要测试的页面中的控件都进行截图,所以之前的截图中会有一个包含当前显示的用户界面中的“排序”按钮的图片,匹配的目的就是将这个图片找到。
在实施中,预先会配置图片和操作的对应关系,根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。由于每个图片都会包括至少一个控件,而不同的控件对应的操作不同。比如排序控件需要执行的操作是选择不同的排序规则(例如成交量排序、信用度排序等),并点击排序按钮;搜索控件需要执行的操作是在搜索框中输入搜索词,并点击搜索按钮。
基于此,需要为不同的图片配置对应的操作,这样当匹配到图片后,就知道在当前显示的用户界面上进行什么操作。
比如包含搜索控件的图片对应的操作是在搜索框中输入搜索词,并点击搜索按钮。在匹配到包含搜索控件的图片后,根据上述对应关系确定需要在搜索框中输入搜索词,并点击搜索按钮,并在当前显示的用户界面的搜索框中输入搜索词,并模拟点击搜索按钮,从而实现对当前显示的用户界面的搜索控件的测试。
其中,本申请实施例还提供了一种测试***框架,如图2所示,该***框架包括控制服务器(即图中的jenkins服务器)、代码服务器(即图中的SVN)和至少一个测试设备(即图中的Mac代理设备)。
上述图1的方法的执行主体就是测试设备。
在实施中,人工将执行测试的代码存储到代码服务器中,测试设备通过读取代码就能实现图1的过程。
由于本申请实施例可以支持多个测试设备同时测试用户界面,需要有一个进行测试调度的设备。
可选的,控制服务器在收到测试命令后,通知当前空闲的测试设备测试的用户界面。
可选的,测试命令中包括需要测试设备下载的代码对应的代码地址;
相应的,测试设备在收到控制服务器发送的读取指令后,根据收到的代码地址从代码服务器中下载对应的代码,并运行下载的代码实现测试过程。
控制服务器可以实时或周期查看是否有空闲的测试设备(即测试完毕),如果有,则继续通知当前空闲的测试设备测试的用户界面,直到所有需要测试的用户界面都完成测试。
基于上述***框架,本申请实施例还提供一种测试调度的方法。
下面列举一个例子介绍下本申请实施例完整的技术方案。
如图3所示,本申请实施例四测试方法包括:
步骤301、控制服务器确定当前有空闲的测试设备。
步骤302、控制服务器通知当前空闲的测试设备测试的用户界面。
步骤303、测试设备在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,并根据下载的代码信息执行后续步骤。
步骤304、测试设备判断目标软件是否在支持所述目标软件的设备上运行,如果是,则执行步骤305;否则,执行步骤307。
步骤305、测试设备从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
步骤306、测试设备确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试,并在测试完成后,等待控制服务器发送读取指令。
步骤307、测试设备确定所述目标软件的安装程序的存储路径。
步骤308、测试设备根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件。
步骤309、测试设备从支持所述目标软件的模拟器中运行所述目标软件。
步骤310、测试设备从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
步骤311、测试设备确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试,并在测试完成后,等待控制服务器发送读取指令。
基于同一发明构思,本申请实施例中还提供了一种测试设备,由于该设备解决问题的原理与本申请实施例测试方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
如图4所示,本申请实施例测试设备包括:
选择模块401,用于从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
处理模块402,用于确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试。
本申请实施例预先将目标软件中需要测试的用户界面进行截图,一个用户界面可以有一个截图,也可以有多个截图。可选的,每个截图中至少包括一个控件。
比如用户界面中包括输入框、按钮等控件,可以截一个图将输入框和按钮都包含进去;也可以分别截两个图,一个包括输入框,一个包括按钮。
在进行测试时,由于测试环境不同,有可能目标软件需要在支持所述目标软件的设备上运行;也可能需要在所述模拟器中运行所述安装程序安装所述目标软件。而不同的测试环境后续处理过程是不同的。
基于此,在进行用户界面测试时,需要判断所述目标软件是否在支持所述目标软件的设备上运行。
具体目标软件是否在支持所述目标软件的设备上运行可以由人工预先配置的;也可以自动进行检测。
下面分别介绍下在支持所述目标软件的设备中运行所述目标软件和在支持所述目标软件的模拟器中运行所述目标软件的具体过程。
过程一、在支持所述目标软件的设备中运行所述目标软件。
所述选择模块401还用于:
在确定所述目标软件在支持所述目标软件的设备上运行后,可以直接从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
以IOS软件举例,在进行测试前需要用户先运行IOS软件,比如可以采用Veency+realVNC的方式将支持所述目标软件的设备投影到测试设备上,也就是现实测试设备能够控制将支持所述目标软件的设备上运行的IOS软件。之后就可以由所述选择模块401从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
当然,也可以由本申请实施例的选择模块401从支持所述目标软件的设备上运行IOS软件。
在进行匹配时,如果预先配置的图片的分辨率和显示的用户界面的分辨率不一致,会降低匹配成功率,所以需要保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致。比如预先配置的图片的分辨率如果是1920*1080,则需要保证显示的用户界面的分辨率也是1920*1080。
由于在之前进行截图时,有可能是在支持所述目标软件的设备中运行目标软件后进行的截图,也可能是在支持所述目标软件的模拟器中运行所述目标软件后进行的截图。
如果在支持所述目标软件的设备中运行目标软件后进行的截图,不需要调整显示的用户界面的分辨率;
如果在支持所述目标软件的模拟器中运行所述目标软件后进行的截图,需要将显示的用户界面的分辨率调整成与所述模拟器的分辨率一致。
调整方式可以由人工继续调整,也可以由选择模块401自动调用设备中的配置选项进行调整。
在保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致后,就可以进行图片匹配。
图片匹配是将当前显示的用户界面和每一张预先配置的图片进行匹配。找到包括当前显示的全部或部分用户界面的图片。具体匹配方式有很多种,比如可以参见目前的图片匹配方式,也可以采用类似人脸识别的方式。
假设当前显示的用户界面中有“排序”按钮。由于之前在截图时会将需要测试的页面中的控件都进行截图,所以之前的截图中会有一个包含当前显示的用户界面中的“排序”按钮的图片,匹配的目的就是将这个图片找到。
在实施中,预先会配置图片和操作的对应关系,处理模块402根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。由于每个图片都会包括至少一个控件,而不同的控件对应的操作不同。比如排序控件需要执行的操作是选择不同的排序规则(例如成交量排序、信用度排序等),并点击排序按钮;搜索控件需要执行的操作是在搜索框中输入搜索词,并点击搜索按钮。
基于此,需要为不同的图片配置对应的操作,这样当匹配到图片后,就知道在当前显示的用户界面上进行什么操作。
比如包含搜索控件的图片对应的操作是在搜索框中输入搜索词,并点击搜索按钮。在匹配到包含搜索控件的图片后,根据上述对应关系确定需要在搜索框中输入搜索词,并点击搜索按钮,并在当前显示的用户界面的搜索框中输入搜索词,并模拟点击搜索按钮,从而实现对当前显示的用户界面的搜索控件的测试。
过程二、在支持所述目标软件的模拟器中运行所述目标软件。
针对过程二,一种方式是人工将目标软件安装到支持所述目标软件的模拟器中,并运行。
为了进一步提高自动化效率,可以人工将目标软件安装到支持所述目标软件的模拟器中,由机器自动运行。
具体的,所述选择模块401从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,若确定所述目标软件需要在支持所述目标软件的模拟器中运行,从支持所述目标软件的模拟器中运行所述目标软件。
可选的,除了机器自动运行,还可以由机器自动安装所述目标软件。
具体的,所述选择模块401确定所述目标软件的安装程序的存储路径;根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件;从支持所述目标软件的模拟器中运行所述目标软件。
可选的,在安装所述目标软件时,所述选择模块401将所述存储路径对应的软件提取出来,并通过Instruments开源框架里面提供的api接口,在所述模拟器中运行所述安装程序安装所述目标软件。
从支持所述目标软件的模拟器中运行所述目标软件之后,所述选择模块401从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
在进行匹配时,如果预先配置的图片的分辨率和显示的用户界面的分辨率不一致,会降低匹配成功率,所以需要保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致。比如预先配置的图片的分辨率如果是1920*1080,则需要保证显示的用户界面的分辨率也是1920*1080。
由于在之前进行截图时,有可能是在支持所述目标软件的设备中运行目标软件后进行的截图,也可能是在支持所述目标软件的模拟器中运行所述目标软件后进行的截图。
如果在支持所述目标软件的模拟器中运行目标软件后进行的截图,不需要调整显示的用户界面的分辨率;
如果在支持所述目标软件的设备中运行所述目标软件后进行的截图,需要将显示的用户界面的分辨率调整成与所述模拟器的分辨率一致。
调整方式可以由人工继续调整,也可以由所述选择模块401自动调用设备中的配置选项进行调整。
在保证预先配置的图片的分辨率和显示的用户界面的分辨率保持一致后,就可以进行图片匹配。
图片匹配是将当前显示的用户界面和每一张预先配置的图片进行匹配。找到包括当前显示的全部或部分用户界面的图片。具体匹配方式有很多种,只要能够进行两个图片比较的方式都适用本申请实施例,比如可以采用比较图片和用户界面的像素方式进行图像匹配。
假设当前显示的用户界面中有“排序”按钮。由于之前在截图时会将需要测试的页面中的控件都进行截图,所以之前的截图中会有一个包含当前显示的用户界面中的“排序”按钮的图片,匹配的目的就是将这个图片找到。
在实施中,预先会配置图片和操作的对应关系,处理模块402根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。由于每个图片都会包括至少一个控件,而不同的控件对应的操作不同。比如排序控件需要执行的操作是选择不同的排序规则(例如成交量排序、信用度排序等),并点击排序按钮;搜索控件需要执行的操作是在搜索框中输入搜索词,并点击搜索按钮。
基于此,需要为不同的图片配置对应的操作,这样当匹配到图片后,就知道在当前显示的用户界面上进行什么操作。
比如包含搜索控件的图片对应的操作是在搜索框中输入搜索词,并点击搜索按钮。在匹配到包含搜索控件的图片后,根据上述对应关系确定需要在搜索框中输入搜索词,并点击搜索按钮,并在当前显示的用户界面的搜索框中输入搜索词,并模拟点击搜索按钮,从而实现对当前显示的用户界面的搜索控件的测试。
可选的,本申请实施例的设备还包括:
控制模块403,用于在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,并根据所述代码信息控制所述选择模块401和所述处理模块402进行测试。
也就是说,上述所述选择模块401和所述处理模块402执行的内容都由控制模块403控制。
控制的方式可以是通知所述选择模块401和所述处理模块402如何执行,也可以是将代码信息发送给所述选择模块401和所述处理模块402,由所述选择模块401和所述处理模块402根据代码信息执行上述操作。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (12)

1.一种测试方法,其特征在于,所述方法包括:
从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试。
2.如权利要求1所述的方法,其特征在于,确定选择的图片对应的操作,包括:
根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。
3.如权利要求1所述的方法,其特征在于,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
确定所述目标软件在支持所述目标软件的设备上运行。
4.如权利要求1所述的方法,其特征在于,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
若确定所述目标软件需要在支持所述目标软件的模拟器中运行,从支持所述目标软件的模拟器中运行所述目标软件。
5.如权利要求4所述的方法,其特征在于,从支持所述目标软件的模拟器中运行所述目标软件之前,还包括:
确定所述目标软件的安装程序的存储路径;
根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件。
6.如权利要求1~5任一所述的方法,其特征在于,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,还包括:
在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,用以进行自动测试。
7.一种测试设备,其特征在于,该设备包括:
选择模块,用于从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片,其中所述图片是需要测试的用户界面中的控件的截图;
处理模块,用于确定选择的图片对应的操作,并根据确定的操作,在所述用户界面上进行测试。
8.如权利要求7所述的设备,其特征在于,所述处理模块具体用于:
在确定选择的图片对应的操作时,根据预先设定的图片和操作的对应关系,确定选择的图片对应的操作。
9.如权利要求7所述的设备,其特征在于,所述选择模块还用于:
在确定所述目标软件在支持所述目标软件的设备上运行后,从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片。
10.如权利要求7所述的设备,其特征在于,所述选择模块还用于:
从预先配置的至少一个图片中选择与目标软件中需要测试的用户界面匹配的图片之前,若确定所述目标软件需要在支持所述目标软件的模拟器中运行,从支持所述目标软件的模拟器中运行所述目标软件。
11.如权利要求10所述的设备,其特征在于,所述选择模块还用于:
确定所述目标软件的安装程序的存储路径;根据确定的所述存储路径,在所述模拟器中运行所述安装程序安装所述目标软件;从支持所述目标软件的模拟器中运行所述目标软件。
12.如权利要求7~11任一所述的设备,其特征在于,所述设备还包括:
控制模块,用于在收到控制服务器发送的读取指令后,从代码服务器中下载与需要进行测试的用户界面对应的代码信息,并根据所述代码信息控制所述选择模块和所述处理模块进行测试。
CN201510250889.3A 2015-05-15 2015-05-15 一种测试方法及设备 Pending CN106294099A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510250889.3A CN106294099A (zh) 2015-05-15 2015-05-15 一种测试方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510250889.3A CN106294099A (zh) 2015-05-15 2015-05-15 一种测试方法及设备

Publications (1)

Publication Number Publication Date
CN106294099A true CN106294099A (zh) 2017-01-04

Family

ID=57632292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510250889.3A Pending CN106294099A (zh) 2015-05-15 2015-05-15 一种测试方法及设备

Country Status (1)

Country Link
CN (1) CN106294099A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228438A (zh) * 2017-12-29 2018-06-29 广州品唯软件有限公司 一种移动终端的性能测试方法及装置
CN109634859A (zh) * 2018-12-10 2019-04-16 宋航 一种控件属性识别和图像识别相结合的测试方法
CN109840202A (zh) * 2018-12-15 2019-06-04 深圳壹账通智能科技有限公司 应用程序控件检测方法、装置、电子设备及存储介质
CN111400175A (zh) * 2020-03-06 2020-07-10 广东电网有限责任公司 一种web操作事件的录制重放***、方法以及设备
CN111552634A (zh) * 2020-03-30 2020-08-18 深圳壹账通智能科技有限公司 前端***的测试方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823758A (zh) * 2014-03-13 2014-05-28 北京金山网络科技有限公司 一种浏览器测试方法及装置
US20140165040A1 (en) * 2012-12-07 2014-06-12 Sugarcrm Inc. Test script generation for application image validation
CN104484273A (zh) * 2014-12-19 2015-04-01 广州博冠信息科技有限公司 应用程序的测试方法、设备及***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140165040A1 (en) * 2012-12-07 2014-06-12 Sugarcrm Inc. Test script generation for application image validation
CN103823758A (zh) * 2014-03-13 2014-05-28 北京金山网络科技有限公司 一种浏览器测试方法及装置
CN104484273A (zh) * 2014-12-19 2015-04-01 广州博冠信息科技有限公司 应用程序的测试方法、设备及***

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228438A (zh) * 2017-12-29 2018-06-29 广州品唯软件有限公司 一种移动终端的性能测试方法及装置
CN109634859A (zh) * 2018-12-10 2019-04-16 宋航 一种控件属性识别和图像识别相结合的测试方法
CN109840202A (zh) * 2018-12-15 2019-06-04 深圳壹账通智能科技有限公司 应用程序控件检测方法、装置、电子设备及存储介质
CN111400175A (zh) * 2020-03-06 2020-07-10 广东电网有限责任公司 一种web操作事件的录制重放***、方法以及设备
CN111400175B (zh) * 2020-03-06 2023-08-18 广东电网有限责任公司 一种web操作事件的录制重放***、方法以及设备
CN111552634A (zh) * 2020-03-30 2020-08-18 深圳壹账通智能科技有限公司 前端***的测试方法、装置及存储介质

Similar Documents

Publication Publication Date Title
CN106294099A (zh) 一种测试方法及设备
CN106528395B (zh) 测试用例的生成方法及装置
CN112270149B (zh) 验证平台自动化集成方法、***及电子设备和存储介质
CN107896244B (zh) 一种版本文件的分发方法、客户端及服务器
US20120230587A1 (en) Systems and methods for testing content of mobile communication devices
CN107733985B (zh) 一种云计算***功能组件部署方法及装置
US20150370688A1 (en) Automatic updating of graphical user interface element locators based on dimension comparison
US20150370694A1 (en) Automatic updating of graphical user interface element locators based on image comparison
CN106776319B (zh) 自动测试方法及装置
CN109885480A (zh) 一种基于调试桥的自动化界面兼容性测试方法及装置
KR20170015968A (ko) 모바일 장치들의 원격 구성을 허용하기 위해 모바일 장치들 상에 설치되는 고속 어플리케이션
CN110716853A (zh) 一种测试脚本录制方法、应用程序测试方法和相关装置
CN108536597A (zh) 一种终端测试方法、装置、终端设备及存储介质
CN106371881A (zh) 一种用于服务器内程序版本更新的方法和***
CN108170588B (zh) 一种测试环境搭建方法及装置
CN105657445A (zh) 电视购物***及其实现方法
CN113704110A (zh) 用户界面的自动化测试方法及装置
CN106528429A (zh) 一种ui界面测试方法及装置
CN113535567B (zh) 软件测试方法、装置、设备和介质
CN115658496A (zh) 可扩展的Web自动化测试方法、***、设备及存储介质
US20170039037A1 (en) Live mobile application visual editor demo
CN103198250B (zh) 智能电视应用程序的审核方法
CN110688318A (zh) 程序测试方法和装置
US9495175B2 (en) Deploying multi-channel or device agnostic applications
US10169216B2 (en) Simulating sensors

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

Application publication date: 20170104

RJ01 Rejection of invention patent application after publication