CN108459959A - 用户界面自动化测试方法、装置、设备及存储介质 - Google Patents
用户界面自动化测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN108459959A CN108459959A CN201711478450.1A CN201711478450A CN108459959A CN 108459959 A CN108459959 A CN 108459959A CN 201711478450 A CN201711478450 A CN 201711478450A CN 108459959 A CN108459959 A CN 108459959A
- Authority
- CN
- China
- Prior art keywords
- agreement
- test
- page
- redirect
- testing requirement
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- 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)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种用户界面自动化测试方法、装置、设备及存储介质。所述测试方法包括:根据页面测试需求,确定对应的跳转协议;根据所述跳转协议,跳转到应用的被测试页面;验证所述被测试页面。本发明通过跳转协议,使每条测试独立性强,并跳过共同路径,直接达到最终的被测试页面,从而降低了测试脚本的运行时间,提升了测试脚本的稳定性,同时有效提升了测试效率。
Description
技术领域
本发明涉及应用测试技术领域,特别是涉及一种用户界面自动化测试方法、装置、设备及存储介质。
背景技术
通过UI(User Interface,用户界面)自动化的测试方式可以在App(Application,应用)版本集成阶段进行回归测试,从而替代大量的手工测试。
目前,UI自动化的测试路径是根据页面的层级进行设计;如果一款App页面层级较多,导致具有较多的共同路径,这样在UI自动化的测试脚本中会重复运行共同的路径,不仅提升了测试脚本的运行时间,而且测试脚本的稳定性也降低了,进而也降低了测试效率。
发明内容
为了克服上述缺陷,本发明要解决的技术问题是提供一种用户界面自动化测试方法、装置、设备及存储介质,用以至少解决现有UI自动化测试效率低的问题。
为解决上述技术问题,本发明实施例中的一种用户界面自动化测试方法,包括:
根据页面测试需求,确定对应的跳转协议;
根据所述跳转协议,跳转到应用的被测试页面;
验证所述被测试页面。
为解决上述技术问题,本发明实施例中的一种用户界面自动化测试装置,包括:
确定模块,用于根据页面测试需求,确定对应的跳转协议;
跳转模块,用于根据所述跳转协议,跳转到应用的被测试页面;
验证模块,用于验证所述被测试页面。
为解决上述技术问题,本发明实施例中的一种测试设备,包括存储器和处理器,所述存储器存储有用户界面自动化测试计算机程序,所述处理器执行所述计算机程序,以实现如上所述方法的步骤。
为解决上述技术问题,本发明实施例中的一种计算机可读存储介质,存储有用户界面自动化测试计算机程序,所述计算机程序被至少一个处理器执行时,以实现如上所述方法的步骤。
本发明实施例有益效果如下:
本发明实施例中方法、装置、设备及存储介质,通过跳转协议,使每条测试独立性强,并跳过共同路径,直接达到最终的被测试页面,从而降低了测试脚本的运行时间,提升了测试脚本的稳定性,同时有效提升了测试效率。
附图说明
图1是本发明实施例中一种用户界面自动化测试方法的流程图;
图2是一种现有用户界面自动化测试方法的流程图;
图3是另外一种现有用户界面自动化测试方法的流程图;
图4是本发明实施例中一种用户界面自动化测试设备的结构示意图;
图5是本发明实施例中一种用户界面自动化测试装置的结构示意图。
具体实施方式
为了解决现有技术的问题,本发明实施例提供了一种用户界面自动化测试方法、装置、设备及存储介质,以下结合附图以及实施例,对本发明实施例进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明实施例,并不限定本发明实施例。
实施例一
本发明实施例提供一种用户界面自动化测试方法,如图1所示,所述测试方法包括:
S101,根据页面测试需求,确定对应的跳转协议;
S102,根据所述跳转协议,跳转到应用的被测试页面;
S103,验证所述被测试页面。
本发明实施例中被测试页面指代等待被测试的页面,也可以称之为待测试页面或被测页面。
本发明实施例通过跳转协议,使每条测试独立性强,并跳过共同路径,直接达到最终的被测试页面,从而降低了测试脚本的运行时间,提升了测试脚本的稳定性,同时有效提升了测试效率。
例如,如图2所示,三条测试TestCase分别验证我的收藏、我的发布和我的订阅,现有技术中,三条测试TestCase都要执行启动app首页和点击个人中心的操作,因此三条测试TestCase有重复了共同路径的行为。
如果为了避免重复共同路径,现有技术中采用了多条TestCase合并的方式;例如,如图3所示,把三条测试TestCase合并为一条;从流程中不会执行共同的路径,但是每个测试完成后都需要返回操作,因此如果被测试页面数量很多时,需要额外增加多个返回操作,从而加重一条测试TestCase的操作时间,并提高了TestCase的失败率。
而本发明实施例中,通过跳转协议,跳过共同路径,直接达到最终的被测试页面,可以有效提高测试效率。
实施例二
本发明实施例提供一种用户界面自动化测试方法,具体说,本发明实施例不仅包括了实施例一所述方法的步骤,并在实施例一的基础上,提出了一种跳转协议的实现方式;所述跳转协议的实现方式包括:
获取所述应用中一个或多个测试页面的页面地址;
根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议。
本发明实施例根据页面地址实现跳转协议,简化了跳转协议的实现逻辑,从而进一步提高测试效率。
在具体实现时,跳转协议可以在S101之前实现。
实施例三
本发明实施例提供一种用户界面自动化测试方法,具体说,本发明实施例在实施例二的基础上,提出了一种通过跳转配置文件管理测试用类需要启动(或调用)的跳转协议的方式,本发明实施例中管理方式包括:
在实施例二创建的跳转协议中选取一个或多个跳转协议,并添加到预设的跳转配置文件中。
本发明实施例通过跳转配置文件管理需要启动(或调用)的跳转协议,从而可以使测试用类根据测试需求,从跳转配置文件中启动(或调用)跳转协议,从而快捷的跳转到应用的被测试页面,进而有效提高测试效率。
例如,在本发明实施例中,可选地,所述根据页面测试需求,确定对应的跳转协议,包括:
根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议;
调用搜索到的跳转协议,以跳转到所述应用的被测试页面。
实施例四
本发明实施例提供一种用户界面自动化测试方法,具体说,本发明实施例在实施例三的基础上,提供一种根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议的搜索方式,所述搜索方式包括:
根据所述页面测试需求,编写测试用例;
在所述测试用例的测试框架中启动驱动;
在所述驱动中设置调用参数;
根据在跳转配置文件中,预先建立的跳转协议和调用参数的赋值关系,在所述跳转配置文件中搜索与所述页面测试需求对应的跳转协议。
本发明实施例实现逻辑简单,从而降低测试时间,进而有效提高测试效率。
在本发明实施例中,可选地,所述在所述测试用例的测试框架中启动驱动之前,包括:
在所述测试用例中设置setUP方法;
在所述setUP方法中创建Appium测试框架。
在本发明实施例中,可选地,在所述跳转配置文件中,预先建立跳转协议和调用参数的赋值关系,包括:在跳转配置文件中,将跳转协议赋值给调用参数。
例如,调用参数为Test_User_Center_New;
跳转协议为:
com.xxx.activity.launch.launchActivity xxxmain://jump/core/collect;
此时,可以在跳转配置文件中,将跳转协议赋值给调用参数;例如:
Test_User_Center_New=
com.xxx.activity.launch.launchActivity xxxmain://jump/core/collect。
实施例五
本发明实施例提供一种用户界面自动化测试方法,具体说,提供一种通过预先实现的跳转协议进行用户界面自动化测试的方法,所述方法包括:
步骤1,初始化启动配置。
在TestCase启动之前需要配置设备信息、平台、包名、activity等信息,将需要配置的信息配置成字典格式作为启动参数。
步骤2,编写测试用例。
本发明实施例通过跳转协议快速直达到被测页面,可以省去之前的操作步骤,所以仅编写验证我的收藏页面即可。
class Test_User_Center_New(UserCenterPage):
def test_user_center_new(self):
self.utils.assert_ok((MobileBy.ANDROID_UIAUTOMATOR,’text(“我的收藏”)’))
然后,在setUP方法中,创建Appium启动Driver设置启动的跳转协议。
Class Test(unittest.TestCase):
def setUP(self):
try:
self.driver=AppiumWebDriver.new
(appActivity=jump_config.Test_User_Center_New)
最后,通过跳转配置jump_config文件管理TestCase对应启动的跳转协议。
例如,在所述跳转配置文件中,通过赋值的方式,建立调用参数与跳转协议对应关系:
Defult=’com.xxx.activity.launch.launchActivity’
Test_User_Center=’com.xxx.activity.launch.launchActivityxxxmain://jump/core/collect’
本发明实施例通过跳转协议,使得编写UI自动化测试脚本不需要再重复的写操作步骤,从而减少测试步骤,并增加测试稳定性,有效提高测试效率。
实施例六
本发明实施例提供一种测试设备,如图4所示,所述设备包括存储器20和处理器22,所述存储器20存储有用户界面自动化测试计算机程序,所述处理器22执行所述计算机程序,以实现如上各个实施例中任意一项所述方法的步骤。
例如,实现如下步骤:
根据页面测试需求,确定对应的跳转协议;
根据所述跳转协议,跳转到应用的被测试页面;
验证所述被测试页面。
在本发明实施例中,可选地,所述根据页面测试需求,确定对应的跳转协议之前,包括:
获取所述应用中一个或多个测试页面的页面地址;
根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议。
在本发明实施例中,可选地,所述根据获取的页面地址,对获取的各个页面分别创建对应的跳转协议之后,包括:
在创建的跳转协议中选取一个或多个跳转协议,并添加到预设的跳转配置文件中。
在本发明实施例中,可选地,所述根据页面测试需求,确定对应的跳转协议,包括:
根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议;
调用搜索到的跳转协议,以跳转到所述应用的被测试页面。
在本发明实施例中,可选地,所述根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议,包括:
根据所述页面测试需求,编写测试用例;
在所述测试用例的测试框架中启动驱动;
在所述驱动中设置调用参数;
根据在跳转配置文件中,预先建立的跳转协议和调用参数的赋值关系,在所述跳转配置文件中搜索与所述页面测试需求对应的跳转协议。
在本发明实施例中,可选地,所述在所述测试用例的测试框架中启动驱动之前,包括:
在所述测试用例中设置setUP方法;
在所述setUP方法中创建Appium测试框架。
本发明实施例在具体实现时,也可以参阅上述各个实施例,具有相应的技术效果。
实施例七
本发明实施例提供一种用户界面自动化测试装置,如图5所示,所述测试装置包括:
确定模块30,用于根据页面测试需求,确定对应的跳转协议;
跳转模块32,用于根据所述跳转协议,跳转到应用的被测试页面;
验证模块34,用于验证所述被测试页面。
在本发明实施例中,可选地,所述测试装置还包括:
创建模块,用于获取所述应用中一个或多个测试页面的页面地址;根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议。
在本发明实施例中,可选地,所述测试装置还包括:
配置模块,用于在创建的跳转协议中选取一个或多个跳转协议,并添加到预设的跳转配置文件中。
在本发明实施例中,可选地,所述确定模块,具体用于根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议。
在本发明实施例中,可选地,所述根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议,包括:
根据所述页面测试需求,编写测试用例;
在所述测试用例的测试框架中启动驱动;
在所述驱动中设置调用参数;
根据在跳转配置文件中,预先建立的跳转协议和调用参数的赋值关系,在所述跳转配置文件中搜索与所述页面测试需求对应的跳转协议。
本发明实施例对应于实施例一至实施例五,在具体实现时,可以参阅上述实施例一至实施例五,具有相应的技术效果。
实施例八
本发明实施例提供一种计算机可读存储介质,所述存储介质存储有用户界面自动化测试计算机程序,所述计算机程序被至少一个处理器执行时,以实现如实施例一至实施例五中任意一项所述方法的步骤。
本发明实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
本发明实施例中计算机可读存储介质可以是RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域已知的任何其他形式的存储介质。可以将一种存储介质藕接至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息;或者该存储介质可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路中。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明实施例的保护范围,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (12)
1.一种用户界面自动化测试方法,其特征在于,所述测试方法包括:
根据页面测试需求,确定对应的跳转协议;
根据所述跳转协议,跳转到应用的被测试页面;
验证所述被测试页面。
2.如权利要求1所述的测试方法,其特征在于,所述根据页面测试需求,确定对应的跳转协议之前,包括:
获取所述应用中一个或多个测试页面的页面地址;
根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议。
3.如权利要求2所述的测试方法,其特征在于,所述根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议之后,包括:
在创建的跳转协议中选取一个或多个跳转协议,并添加到预设的跳转配置文件中。
4.如权利要求3所述的测试方法,其特征在于,所述根据页面测试需求,确定对应的跳转协议,包括:
根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议。
5.如权利要求4所述的测试方法,其特征在于,所述根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议,包括:
根据所述页面测试需求,编写测试用例;
在所述测试用例的测试框架中启动驱动;
在所述驱动中设置调用参数;
根据所述跳转配置文件中,预先建立的跳转协议和调用参数的赋值关系,在所述跳转配置文件中搜索与所述页面测试需求对应的跳转协议。
6.一种用户界面自动化测试装置,其特征在于,所述测试装置包括:
确定模块,用于根据页面测试需求,确定对应的跳转协议;
跳转模块,用于根据所述跳转协议,跳转到应用的被测试页面;
验证模块,用于验证所述被测试页面。
7.如权利要求6所述的测试装置,其特征在于,所述测试装置还包括:
创建模块,用于获取所述应用中一个或多个测试页面的页面地址;根据获取的页面地址,对获取的各个测试页面分别创建对应的跳转协议。
8.如权利要求7所述的测试装置,其特征在于,所述测试装置还包括:
配置模块,用于在创建的跳转协议中选取一个或多个跳转协议,并添加到预设的跳转配置文件中。
9.如权利要求8所述的测试装置,其特征在于,所述确定模块,具体用于根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议。
10.如权利要求9所述的测试装置,其特征在于,所述根据所述页面测试需求,在所述跳转配置文件中搜索对应的跳转协议,包括:
根据所述页面测试需求,编写测试用例;
在所述测试用例的测试框架中启动驱动;
在所述驱动中设置调用参数;
根据所述跳转配置文件中,预先建立的跳转协议和调用参数的赋值关系,在所述跳转配置文件中搜索与所述页面测试需求对应的跳转协议。
11.一种测试设备,其特征在于,所述设备包括存储器和处理器,所述存储器存储有用户界面自动化测试计算机程序,所述处理器执行所述计算机程序,以实现如权利要求1-5中任意一项所述方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述存储介质存储有用户界面自动化测试计算机程序,所述计算机程序被至少一个处理器执行时,以实现如权利要求1-5中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711478450.1A CN108459959A (zh) | 2017-12-29 | 2017-12-29 | 用户界面自动化测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711478450.1A CN108459959A (zh) | 2017-12-29 | 2017-12-29 | 用户界面自动化测试方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108459959A true CN108459959A (zh) | 2018-08-28 |
Family
ID=63221236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711478450.1A Pending CN108459959A (zh) | 2017-12-29 | 2017-12-29 | 用户界面自动化测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108459959A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110908763A (zh) * | 2019-11-27 | 2020-03-24 | 上海米哈游网络科技股份有限公司 | 一种验收方法、装置、设备和存储介质 |
CN111651347A (zh) * | 2020-04-28 | 2020-09-11 | 中国平安财产保险股份有限公司 | 测试系统的跳转验证方法、装置、设备及存储介质 |
CN113726610A (zh) * | 2021-08-31 | 2021-11-30 | 中国平安人寿保险股份有限公司 | 基于路由协议的ui自动化测试方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102043716A (zh) * | 2010-12-24 | 2011-05-04 | 南京联创科技集团股份有限公司 | 基于业务驱动的软件自动化测试方法 |
CN102819492A (zh) * | 2012-08-02 | 2012-12-12 | 中山大学 | 一种基于Android的关键字驱动自动化测试框架 |
US8645919B2 (en) * | 2008-04-16 | 2014-02-04 | Microsoft Corporation | Generic validation test framework for graphical user interfaces |
CN106959921A (zh) * | 2017-02-20 | 2017-07-18 | 百度在线网络技术(北京)有限公司 | 自动测试方法、终端、平台及系统 |
CN107451062A (zh) * | 2017-08-09 | 2017-12-08 | 百度在线网络技术(北京)有限公司 | 一种用户界面遍历测试方法、装置、服务器、存储介质 |
-
2017
- 2017-12-29 CN CN201711478450.1A patent/CN108459959A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645919B2 (en) * | 2008-04-16 | 2014-02-04 | Microsoft Corporation | Generic validation test framework for graphical user interfaces |
CN102043716A (zh) * | 2010-12-24 | 2011-05-04 | 南京联创科技集团股份有限公司 | 基于业务驱动的软件自动化测试方法 |
CN102819492A (zh) * | 2012-08-02 | 2012-12-12 | 中山大学 | 一种基于Android的关键字驱动自动化测试框架 |
CN106959921A (zh) * | 2017-02-20 | 2017-07-18 | 百度在线网络技术(北京)有限公司 | 自动测试方法、终端、平台及系统 |
CN107451062A (zh) * | 2017-08-09 | 2017-12-08 | 百度在线网络技术(北京)有限公司 | 一种用户界面遍历测试方法、装置、服务器、存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110908763A (zh) * | 2019-11-27 | 2020-03-24 | 上海米哈游网络科技股份有限公司 | 一种验收方法、装置、设备和存储介质 |
CN111651347A (zh) * | 2020-04-28 | 2020-09-11 | 中国平安财产保险股份有限公司 | 测试系统的跳转验证方法、装置、设备及存储介质 |
CN111651347B (zh) * | 2020-04-28 | 2024-06-04 | 中国平安财产保险股份有限公司 | 测试系统的跳转验证方法、装置、设备及存储介质 |
CN113726610A (zh) * | 2021-08-31 | 2021-11-30 | 中国平安人寿保险股份有限公司 | 基于路由协议的ui自动化测试方法、装置、设备及介质 |
CN113726610B (zh) * | 2021-08-31 | 2023-08-08 | 中国平安人寿保险股份有限公司 | 基于路由协议的ui自动化测试方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110286896B (zh) | 可视化编辑方法、装置、设备及存储介质 | |
CN109871326B (zh) | 一种脚本录制的方法和装置 | |
US10013330B2 (en) | Automated mobile application verification | |
US8756460B2 (en) | Test selection based on an N-wise combinations coverage | |
CN105204873B (zh) | 一种终端及应用界面显示方法 | |
CN108717393A (zh) | 一种应用程序测试方法及移动终端 | |
CN108459959A (zh) | 用户界面自动化测试方法、装置、设备及存储介质 | |
CN108923997B (zh) | 一种基于python的云服务节点自动测试方法及装置 | |
CN105653338B (zh) | 一种应用的更新方法及装置 | |
CN101441592A (zh) | 嵌入式系统的测试系统及方法 | |
CN105704188A (zh) | 应用与服务的部署方法和装置 | |
CN104049974A (zh) | 控件动态组装方法和系统 | |
CN105404574B (zh) | 一种智能卡与移动终端一致性测试方法及装置 | |
US9477582B2 (en) | Executable software specification generation | |
CN109213505A (zh) | 服务器硬盘固件刷新方法及装置 | |
CN108694049A (zh) | 一种更新软件的方法和设备 | |
CN110888800A (zh) | 服务交互功能的测试方法、装置、存储介质及测试系统 | |
WO2016165461A1 (zh) | 一种电信网网管系统软件自动化测试方法和装置 | |
CN109388420A (zh) | 应用升级测试方法、装置、计算机设备及存储介质 | |
CN104834643B (zh) | 一种快速公共网关接口文件分析方法和装置 | |
CN112860587A (zh) | Ui自动测试方法和装置 | |
CN108540344A (zh) | 一种路由器升级测试方法及系统 | |
CN105893233A (zh) | 用于自动测试固件的方法和系统 | |
CN104679648A (zh) | 跨应用的自动化测试方法 | |
CN102750167B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180828 |