CN113110991A - 页面元素的定位方法及装置、存储介质及电子装置 - Google Patents
页面元素的定位方法及装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN113110991A CN113110991A CN202110336720.5A CN202110336720A CN113110991A CN 113110991 A CN113110991 A CN 113110991A CN 202110336720 A CN202110336720 A CN 202110336720A CN 113110991 A CN113110991 A CN 113110991A
- Authority
- CN
- China
- Prior art keywords
- positioning
- page
- modes
- elements
- determining
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012360 testing method Methods 0.000 claims abstract description 41
- 230000008859 change Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 18
- 230000009466 transformation Effects 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000000844 transformation Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication 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—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- 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
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)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明公开了一种页面元素的定位方法及装置、存储介质及电子装置,其中,上述方法包括:获取定位方式列表,其中,定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;通过定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;在定位的结果符合预设条件的情况下,确定待测页面元素定位成功,解决了相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题,实现对于页面元素的灵活精准的定位、提升了自动化测试场景下对于页面元素的定位成功率。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种页面元素的定位方法及装置、存储介质及电子装置。
背景技术
互联网飞速发展,当UI(User interface,用户界面,简称UI)在进行自动化测试时,最容易失败的情况就是元素定位失败,目前对于用户界面中的元素定位时,都是用的一种定位方式(ID/xpath/selector/classname/linktext等选择其一),并且当UI元素定义不到时,会添加等待时间,尝试切换iframe和切换句柄后,再次定位UI元素。如果该元素的属性位置发生变动时,就会导致定位失败。但在实际测试中一旦元素出现轻微变动,将导致当前的定位方式失效,即使添加等待时间,切换iframe也无济于事。
针对相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题,尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种页面元素的定位方法及装置、存储介质及电子装置,以至少解决相关技术中,以至少解决相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题。
根据本发明实施例的一个方面,提供了一种页面元素的定位方法,包括:获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
在一个示例性实施例中,通过所述定位方式列表中的目标定位方式对页面中的待测页面元素进行定位之前,所述方法还包括:获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;采集所述待测页面元素对应的页面的加载时长;在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
在一个示例性实施例中,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位,包括:确定所述定位方式列表中不同定位方式对于每种页面元素进行定位的成功率;根据所述成功率确定每种页面元素对应的第一定位方式,以确定定位测试的列表,其中,所述第一定位方式用于指示页面元素对应的成功率最高的定位方式;通过所述定位测试的列表中的不同定位方式对页面中的待测页面元素进行定位。
在一个示例性实施例中,获取定位方式列表之前,所述方法还包括:获取不同定位方式的历史使用记录;根据所述历史使用记录确定所述不同定位方式的成功率以及每一定位方式的多个成功率对应的目标元素;根据所述目标元素以及所述成功率确定不同定位方式测试顺序,以确定所述定位方式列表。
在一个示例性实施例中,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功,包括:获取预设的变换次数,其中,所述变换次数用于指示同一元素出现定位失败的次数;在所述定位的结果指示的失败次数超出所述变换次数的情况下,对待测页面执行页面变更,其中所述页面变更包含以下之一:切换页面的iframe元素、切换页面对应的窗口;在执行所述页面变更后的待测页面发出用例成功指示的情况下,确定所述待测页面元素定位成功。
在一个示例性实施例中,在所述定位的结果指示的失败次数未超出所述变换次数的情况下,确定引起定位失败的页面元素的种类;根据所述种类从定位方式列表查找对应成功率最高的目标定位方式进行所述页面元素的重新定位。
根据本发明实施例的另一个方面,还提供了一种页面元素的定位装置,包括:获取模块,用于获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;定位模块,用于通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;确定模块,用于在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
在一个示例性实施例中,上述装置还包括:加载模块,用于获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;采集所述待测页面元素对应的页面的加载时长;在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
在一个示例性实施例中,上述定位模块,还用于确定所述定位方式列表中不同定位方式对于每种页面元素进行定位的成功率;根据所述成功率确定每种页面元素对应的第一定位方式,以确定定位测试的列表,其中,所述第一定位方式用于指示页面元素对应的成功率最高的定位方式;通过所述定位测试的列表中的不同定位方式对页面中的待测页面元素进行定位。
在一个示例性实施例中,上述装置还包括:记录模块,用于获取不同定位方式的历史使用记录;根据所述历史使用记录确定所述不同定位方式的成功率以及每一定位方式的多个成功率对应的目标元素;根据所述目标元素以及所述成功率确定不同定位方式测试顺序,以确定所述定位方式列表。
在一个示例性实施例中,上述确定模块,还用于获取预设的变换次数,其中,所述变换次数用于指示同一元素出现定位失败的次数;在所述定位的结果指示的失败次数超出所述变换次数的情况下,对待测页面执行页面变更,其中所述页面变更包含以下之一:切换页面的iframe元素、切换页面对应的窗口;在执行所述页面变更后的待测页面发出用例成功指示的情况下,确定所述待测页面元素定位成功。
在一个示例性实施例中,上述确定模块,还用于在所述定位的结果指示的失败次数未超出所述变换次数的情况下,确定引起定位失败的页面元素的种类;根据所述种类从定位方式列表查找对应成功率最高的目标定位方式进行所述页面元素的重新定位。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述页面元素的定位方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的页面元素的定位方法。
在本发明实施例中,获取定位方式列表,其中,定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;通过定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;在定位的结果符合预设条件的情况下,确定待测页面元素定位成功,即通过获取页面元素的定位方式列表,对于待测页面从多种定位方式进行定位,进而确保页面元素在位置属性变化的情况下也可以定位成功,解决了相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题,实现对于页面元素的灵活精准的定位,增加了UI元素定位的健壮性。当元素出现轻微的变动,也能正确定位到元素,使自动化测试可以继续进行。提升了自动化测试场景下对于页面元素的定位成功率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种页面元素的定位方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的页面元素的定位方法的流程图;
图3是根据本发明一可选实施例的UI元素定位的流程示意图;
图4是根据本发明实施例的页面元素的定位装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例所提供的方法实施例可以在计算机终端、移动终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种页面元素的定位方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的页面元素的定位方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种页面元素的定位方法,图2是根据本发明实施例的页面元素的定位方法的流程图,该流程包括如下步骤:
步骤S202,获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
步骤S204,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
步骤S206,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
通过上述步骤,获取定位方式列表,其中,定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;通过定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;在定位的结果符合预设条件的情况下,确定待测页面元素定位成功,即通过获取页面元素的定位方式列表,对于待测页面从多种定位方式进行定位,进而确保页面元素在位置属性变化的情况下也可以定位成功,解决了相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题,实现对于页面元素的灵活精准的定位,增加了UI元素定位的健壮性。当元素出现轻微的变动,也能正确定位到元素,使自动化测试可以继续进行,提升了自动化测试场景下对于页面元素的定位成功率。
在一个示例性实施例中,通过所述定位方式列表中的目标定位方式对页面中的待测页面元素进行定位之前,所述方法还包括:获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;采集所述待测页面元素对应的页面的加载时长;在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
简而言之,在包含待测页面元素的待测页面执行测试时,需要根据待测页面的数据大小进行一定时间的加载时间,在确保完成待测页面中所有元素的加载后,再进入测试阶段,以保证待测页面进行页面元素测试的完整性。
在一个示例性实施例中,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位,包括:确定所述定位方式列表中不同定位方式对于每种页面元素进行定位的成功率;根据所述成功率确定每种页面元素对应的第一定位方式,以确定定位测试的列表,其中,所述第一定位方式用于指示页面元素对应的成功率最高的定位方式;通过所述定位测试的列表中的不同定位方式对页面中的待测页面元素进行定位。
可以理解的是,为了提升测试时准确性,可以根据每种元素对应的定位方式的准确率,优先使用的某一成功率最高的定位方式对待测页面中的页面元素进行定位。
在一个示例性实施例中,获取定位方式列表之前,所述方法还包括:获取不同定位方式的历史使用记录;根据所述历史使用记录确定所述不同定位方式的成功率以及每一定位方式的多个成功率对应的目标元素;根据所述目标元素以及所述成功率确定不同定位方式测试顺序,以确定所述定位方式列表。
为了使得确定出的定位方式的成功率更高,可以根据不同的定位方式的历史定位记录,确定出该定位方式对应的成功率最高时对应的页面元素,使得再次出现该页面元素时可以优先适用成功率最高的定位方式进行定位,并且在出现失败时,采用确定出的出本次定位方式以外的成功率最高的定位方式进行再次定位。
在一个示例性实施例中,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功,包括:获取预设的变换次数,其中,所述变换次数用于指示同一元素出现定位失败的次数;在所述定位的结果指示的失败次数超出所述变换次数的情况下,对待测页面执行页面变更,其中所述页面变更包含以下之一:切换页面的iframe元素、切换页面对应的窗口;在执行所述页面变更后的待测页面发出用例成功指示的情况下,确定所述待测页面元素定位成功。
例如,根据添加的多种定位方式依次进行元素定位,如果定位成功,就继续进行后续操作;如果定位失败,就尝试切换iframe、切换窗口后,再次根据定义的定位方式进行定位。如果定位成功,执行后续操作;如果仍然定位失败,则报告用例执行失败。
在一个示例性实施例中,在所述定位的结果指示的失败次数未超出所述变换次数的情况下,确定引起定位失败的页面元素的种类;根据所述种类从定位方式列表查找对应成功率最高的目标定位方式进行所述页面元素的重新定位。
当确定页面元素的失败次数后,当失败的次数低于变换次数的情况下,证明可以在不进行页面变换的情况下,再次进行页面元素的定位,直到在变换次数内定位成功。
为了更好的理解本发明实施例以及可选实施例的技术方案,以下结合示例对上述的页面元素的定位方法的流程进行解释说明,但不用于限定本发明实施例的技术方案。
本发明可选实施例中提供了一种提升UI元素定位成功率的技术方案,在定位元素时采用多种定位方式并存,一种方式定位失败后尝试进行其他方式的定位,可以有效提升元素定位的成功率。
作为一种可选的实施方式,图3是根据本发明一可选实施例的UI元素定位的流程示意图,包含以下内容:添加元素的定位方式时,添加多种定位方式。当测试执行时,先进行智能等待,并且确定允许定位失败的次数。根据添加的多种定位方式依次进行元素定位,如果定位成功,就继续进行后续操作;如果定位失败,就尝试切换iframe、切换窗口后,再次根据定义的定位方式进行定位。如果定位成功,执行后续操作;如果仍然定位失败,则报告用例执行失败。
通过上述可选实施例,利用多种定位方式进行语速的定位,实现对于页面元素的灵活精准的定位,增加了UI元素定位的健壮性。当元素出现轻微的变动,也能正确定位到元素,使自动化测试可以继续进行。提升了自动化测试场景下对于页面元素的定位成功率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,事件器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种页面元素的定位装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的页面元素的定位装置的结构框图,如图4所示,该装置包括:
获取模块42,用于获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
定位模块44,用于通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
确定模块46,用于在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
通过上述装置,获取定位方式列表,其中,定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;通过定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;在定位的结果符合预设条件的情况下,确定待测页面元素定位成功,即通过获取页面元素的定位方式列表,对于待测页面从多种定位方式进行定位,进而确保页面元素在位置属性变化的情况下也可以定位成功,解决了相关技术中,UI测试时,元素容易定位失败,导致自动化测试失败率高等问题,实现对于页面元素的灵活精准的定位,增加了UI元素定位的健壮性。当元素出现轻微的变动,也能正确定位到元素,使自动化测试可以继续进行。提升了自动化测试场景下对于页面元素的定位成功率。
在一个示例性实施例中,上述装置还包括:加载模块,用于获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;采集所述待测页面元素对应的页面的加载时长;在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
简而言之,在包含待测页面元素的待测页面执行测试时,需要根据待测页面的数据大小进行一定时间的加载时间,在确保完成待测页面中所有元素的加载后,再进入测试阶段,以保证待测页面进行页面元素测试的完整性。
在一个示例性实施例中,上述定位模块,还用于确定所述定位方式列表中不同定位方式对于每种页面元素进行定位的成功率;根据所述成功率确定每种页面元素对应的第一定位方式,以确定定位测试的列表,其中,所述第一定位方式用于指示页面元素对应的成功率最高的定位方式;通过所述定位测试的列表中的不同定位方式对页面中的待测页面元素进行定位。
可以理解的是,为了提升测试时准确性,可以根据每种元素对应的定位方式的准确率,优先使用的某一成功率最高的定位方式对待测页面中的页面元素进行定位。
在一个示例性实施例中,上述装置还包括:记录模块,用于获取不同定位方式的历史使用记录;根据所述历史使用记录确定所述不同定位方式的成功率以及每一定位方式的多个成功率对应的目标元素;根据所述目标元素以及所述成功率确定不同定位方式测试顺序,以确定所述定位方式列表。
为了使得确定出的定位方式的成功率更高,可以根据不同的定位方式的历史定位记录,确定出该定位方式对应的成功率最高时对应的页面元素,使得再次出现该页面元素时可以优先适用成功率最高的定位方式进行定位,并且在出现失败时,采用确定出的出本次定位方式以外的成功率最高的定位方式进行再次定位。
在一个示例性实施例中,上述确定模块,还用于获取预设的变换次数,其中,所述变换次数用于指示同一元素出现定位失败的次数;在所述定位的结果指示的失败次数超出所述变换次数的情况下,对待测页面执行页面变更,其中所述页面变更包含以下之一:切换页面的iframe元素、切换页面对应的窗口;在执行所述页面变更后的待测页面发出用例成功指示的情况下,确定所述待测页面元素定位成功。
例如,根据添加的多种定位方式依次进行元素定位,如果定位成功,就继续进行后续操作;如果定位失败,就尝试切换iframe、切换窗口后,再次根据定义的定位方式进行定位。如果定位成功,执行后续操作;如果仍然定位失败,则报告用例执行失败。
在一个示例性实施例中,上述确定模块,还用于在所述定位的结果指示的失败次数未超出所述变换次数的情况下,确定引起定位失败的页面元素的种类;根据所述种类从定位方式列表查找对应成功率最高的目标定位方式进行所述页面元素的重新定位。
当确定页面元素的失败次数后,当失败的次数低于变换次数的情况下,证明可以在不进行页面变换的情况下,再次进行页面元素的定位,直到在变换次数内定位成功。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
S2,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
S3,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在一个示例性实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
S2,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
S3,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种页面元素的定位方法,其特征在于,包括:
获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
2.根据权利要求1所述的方法,其特征在于,通过所述定位方式列表中的目标定位方式对页面中的待测页面元素进行定位之前,所述方法还包括:
获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;
采集所述待测页面元素对应的页面的加载时长;
在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
3.根据权利要求1所述的方法,其特征在于,通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位,包括:
确定所述定位方式列表中不同定位方式对于每种页面元素进行定位的成功率;
根据所述成功率确定每种页面元素对应的第一定位方式,以确定定位测试的列表,其中,所述第一定位方式用于指示页面元素对应的成功率最高的定位方式;
通过所述定位测试的列表中的不同定位方式对页面中的待测页面元素进行定位。
4.根据权利要求1所述的方法,其特征在于,获取定位方式列表之前,所述方法还包括:
获取不同定位方式的历史使用记录;
根据所述历史使用记录确定所述不同定位方式的成功率以及每一定位方式的多个成功率对应的目标元素;
根据所述目标元素以及所述成功率确定不同定位方式测试顺序,以确定所述定位方式列表。
5.根据权利要求1所述的方法,其特征在于,在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功,包括:
获取预设的变换次数,其中,所述变换次数用于指示同一元素出现定位失败的次数;
在所述定位的结果指示的失败次数超出所述变换次数的情况下,对待测页面执行页面变更,其中所述页面变更包含以下之一:切换页面的iframe元素、切换页面对应的窗口;
在执行所述页面变更后的待测页面发出用例成功指示的情况下,确定所述待测页面元素定位成功。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述定位的结果指示的失败次数未超出所述变换次数的情况下,确定引起定位失败的页面元素的种类;
根据所述种类从定位方式列表查找对应成功率最高的目标定位方式进行所述页面元素的重新定位。
7.一种页面元素的定位装置,其特征在于,包括:
获取模块,用于获取定位方式列表,其中,所述定位方式列表包含以下至少之一:页面元素对应的不同定位方式、同种类页面元素在不同定位方式下的成功率、每种页面元素使用的定位方式的顺序;
定位模块,用于通过所述定位方式列表中的不同定位方式对页面中的待测页面元素进行定位;
确定模块,用于在所述定位的结果符合预设条件的情况下,确定所述待测页面元素定位成功。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:加载模块,用于获取预设的加载阈值区间,其中,所述加载阈值区间用于指示加载完成当前页面所需的时间;采集所述待测页面元素对应的页面的加载时长;在所述加载时长符合所述加载阈值区间的情况下,确定所述待测页面元素对应的页面已加载完成。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至6任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110336720.5A CN113110991A (zh) | 2021-03-29 | 2021-03-29 | 页面元素的定位方法及装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110336720.5A CN113110991A (zh) | 2021-03-29 | 2021-03-29 | 页面元素的定位方法及装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113110991A true CN113110991A (zh) | 2021-07-13 |
Family
ID=76712596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110336720.5A Pending CN113110991A (zh) | 2021-03-29 | 2021-03-29 | 页面元素的定位方法及装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113110991A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061927A (zh) * | 2022-06-27 | 2022-09-16 | 壹沓科技(上海)有限公司 | 基于rpa的网页元素定位方法、装置及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424087A (zh) * | 2013-08-21 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种web页面元素定位的方法,装置及系统 |
CN106991045A (zh) * | 2017-03-24 | 2017-07-28 | 广州酷狗计算机科技有限公司 | 页面校验方法及装置 |
CN107015907A (zh) * | 2017-03-15 | 2017-08-04 | 中国地质大学(武汉) | 一种自动准确定位页面元素的系统和方法 |
CN107239397A (zh) * | 2017-05-17 | 2017-10-10 | 北京微影时代科技有限公司 | 一种web自动化测试方法及电子设备 |
CN109669873A (zh) * | 2018-12-27 | 2019-04-23 | 拉扎斯网络科技(上海)有限公司 | 用户界面自动测试方法及装置、电子设备及存储介质 |
CN110297770A (zh) * | 2019-06-18 | 2019-10-01 | 平安普惠企业管理有限公司 | 应用测试方法及相关装置 |
CN110532458A (zh) * | 2019-08-29 | 2019-12-03 | 深圳前海达闼云端智能科技有限公司 | 一种查找方式的确定方法、确定装置、服务器及存储介质 |
CN110750441A (zh) * | 2019-09-06 | 2020-02-04 | 平安健康保险股份有限公司 | 一种自动化测试方法、装置、计算机设备及存储介质 |
-
2021
- 2021-03-29 CN CN202110336720.5A patent/CN113110991A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424087A (zh) * | 2013-08-21 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种web页面元素定位的方法,装置及系统 |
CN107015907A (zh) * | 2017-03-15 | 2017-08-04 | 中国地质大学(武汉) | 一种自动准确定位页面元素的系统和方法 |
CN106991045A (zh) * | 2017-03-24 | 2017-07-28 | 广州酷狗计算机科技有限公司 | 页面校验方法及装置 |
CN107239397A (zh) * | 2017-05-17 | 2017-10-10 | 北京微影时代科技有限公司 | 一种web自动化测试方法及电子设备 |
CN109669873A (zh) * | 2018-12-27 | 2019-04-23 | 拉扎斯网络科技(上海)有限公司 | 用户界面自动测试方法及装置、电子设备及存储介质 |
CN110297770A (zh) * | 2019-06-18 | 2019-10-01 | 平安普惠企业管理有限公司 | 应用测试方法及相关装置 |
CN110532458A (zh) * | 2019-08-29 | 2019-12-03 | 深圳前海达闼云端智能科技有限公司 | 一种查找方式的确定方法、确定装置、服务器及存储介质 |
CN110750441A (zh) * | 2019-09-06 | 2020-02-04 | 平安健康保险股份有限公司 | 一种自动化测试方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
张弛: "基于网页元素主题识别的XPath定位器生成算法研究" * |
高应波: "基于Selenium的Web应用自动化测试研究" * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061927A (zh) * | 2022-06-27 | 2022-09-16 | 壹沓科技(上海)有限公司 | 基于rpa的网页元素定位方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109561002B (zh) | 家电设备的语音控制方法及装置 | |
CN110784879A (zh) | 通信模块的网络模式切换测试方法、系统、设备及介质 | |
CN111124871A (zh) | 接口测试方法及装置 | |
CN110472216B (zh) | 字段的确定方法、装置、存储介质及电子装置 | |
CN113110991A (zh) | 页面元素的定位方法及装置、存储介质及电子装置 | |
CN112948189B (zh) | 一种裕度测试方法、裕度测试系统及相关装置 | |
CN110990381B (zh) | 服务器的处理方法及装置、存储介质和电子装置 | |
CN112388625B (zh) | 任务的下发方法及装置、任务的执行方法及装置 | |
CN111651350A (zh) | 测试用例处理方法、装置、设备及计算机可读存储介质 | |
CN112416734A (zh) | 测试的方法、装置以及存储介质 | |
CN110413531A (zh) | 实现iomt自动测试方法、装置、计算机设备及存储介质 | |
CN110297754A (zh) | 一种测试信息反馈方法及系统 | |
CN114090074A (zh) | 运行环境的配置方法和装置、存储介质及电子装置 | |
CN115442266A (zh) | 网关性能测试方法、装置、存储介质及电子装置 | |
CN113472611A (zh) | 获取WiFi信号强度的方法、装置及可读存储介质 | |
CN109151862B (zh) | 一种基站信息快速配置方法、存储介质及移动终端 | |
CN113110982A (zh) | 数据访问层验证方法及装置、存储介质及电子装置 | |
CN113806118A (zh) | 一种应用程序自修复方法、装置、设备及存储介质 | |
CN112395207A (zh) | 复杂状态机的高效验证方法、设备和存储介质 | |
CN112651514A (zh) | 运维任务执行方法、装置、运维服务器及计算机存储介质 | |
CN111159006A (zh) | 一种自动化测试方法及装置 | |
CN116893978B (zh) | 一种基于ptcrb认证的测试计划生成方法、系统和存储介质 | |
CN109471663B (zh) | 单片机程序的执行方法及装置 | |
CN114138578B (zh) | 一种服务器测试方法和装置 | |
CN113434417B (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: 20210713 |