CN108459959A - 用户界面自动化测试方法、装置、设备及存储介质 - Google Patents

用户界面自动化测试方法、装置、设备及存储介质 Download PDF

Info

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
Application number
CN201711478450.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.)
Beijing 58 Information Technology Co Ltd
Original Assignee
Beijing 58 Information 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 Beijing 58 Information Technology Co Ltd filed Critical Beijing 58 Information Technology Co Ltd
Priority to CN201711478450.1A priority Critical patent/CN108459959A/zh
Publication of CN108459959A publication Critical patent/CN108459959A/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
    • G06F11/3688Test 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中任意一项所述方法的步骤。
CN201711478450.1A 2017-12-29 2017-12-29 用户界面自动化测试方法、装置、设备及存储介质 Pending CN108459959A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 百度在线网络技术(北京)有限公司 一种用户界面遍历测试方法、装置、服务器、存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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