智能等待页面元素加载操作页面元素制造技术

技术编号:27839369 阅读:17 留言:0更新日期:2021-03-30 12:18
本发明专利技术涉及计算机的技术领域,特别是涉及智能等待页面元素加载操作页面元素,有效的解决了自动化测试过程中设置固定等待时间造成的资源浪费的问题,缩短了执行时间,提升了执行效率;包括以下步骤:S1、智能寻找元素;S2、循环等待页面元素加载;S3、操作页面元素;S4、封装接口。装接口。装接口。

【技术实现步骤摘要】
智能等待页面元素加载操作页面元素


[0001]本专利技术涉及计算机的
,特别是涉及智能等待页面元素加载操作页面元素。

技术介绍

[0002]用selenium操作页面上某个元素的时候,需要等待页面加载完成后,才能操作,否则页面上的元素不存在,会抛出异常,或者碰到AJAX异步加载,需要等待元素加载完成后,才能操作。针对上述情况,比较常用的一种解决方式就是使用Thread.sleep();这个也叫做线程休眠。这种写法通常是固定了一个时间,然而不知道页面具体的等待情况,有快有慢,不适用于框架中,基于上述原因提出智能等待页面元素加载操作页面元素来解决上述问题。

技术实现思路

[0003]为解决上述技术问题,本专利技术提供智能等待页面元素加载操作页面元素,有效的解决了自动化测试过程中设置固定等待时间造成的资源浪费的问题,缩短了执行时间,提升了执行效率。
[0004]本专利技术的智能等待页面元素加载操作页面元素,包括以下步骤:
[0005]S1、智能寻找元素;
[0006]S2、循环等待页面元素加载;
[0007]S3、操作页面元素;
[0008]S4、封装接口。
[0009]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S1具体步骤如下:
[0010]封装查询元素控件findElement(Stringkey,String...value):Selenium提供了八种基本寻找页面元素的方式,分别是通过id、name、Xpath、tagName、calssName、CssSelector、linkText、partialLinkText寻找页面元素;
[0011]将id、name、xpath、className四种常用寻找元素的方式进行组合,合并成一个通用findElement方法,根据关键字key判断用何种方式寻找元素,关键字value表示查找的字段的字符串表示;
[0012]key的枚举值为ID、NAME、XPATH、CLASSNAME;value值为可变长的参数,限定为字符串类型,将单个原生方法合并为一个业务方法供其他程序调用。
[0013]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S2具体步骤如下:
[0014]超时函数waitElement(inttimeOut):timeout为int类型的整数,单位为ms,表示查找元素的超时时间,在指定的超时时间内循环调用findElemen(Stringkey,Stringvalue)函数查找元素,每循环查找一次利用sleep()函数休眠500ms,同时超时时间减少500ms,在超时时间内找到元素则作为函数值返回,没有找到元素则抛出未找到异常并截屏,timeout值建议设置为60S。
[0015]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S3具体步骤如下:封装操作元素控件elementHandler(Stringkey,String...value):
[0016]Selenium提供了多种不同的操作页面元素的方式,常用的有click、input、swipe,将click、input、swipe三种常用的操作元素的方式进行组合,合并成一个通用元素处理器方法,根据关键字key判断用何种方式操作元素,关键字value表示操作元素中需要的数据,例如输入的文本值;
[0017]key的枚举值为click、input、swipe;value值为可变长的参数,限定为字符串类型,为操作元素提供需要的数据。
[0018]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S4具体步骤如下:分析提取公共参数合并以上三种方法封装为一个通用的API,并支持外部程序调用;
[0019]输入参数:Stringkey1,String...value1,Stringkey2,String...value2,inttimeOut
[0020]参数说明:
[0021]Key1:寻找元素的方式,枚举值为ID、NAME、XPATH、CLASSNAME;
[0022]Value1:要查找元素的字符串表示,为可变长的参数,字符串类型;
[0023]Key2:操作元素的方式,枚举值为CLICK、INPUT、SWIPE;
[0024]Value2:操作元素中需要的数据,例如输入的文本值,为可变长的参数,字符串类型;
[0025]TimeOut:查找元素的超时时间,指定时间内循环查找元素;
[0026]返回值类型Boolean(true|false):
[0027]True表示操作成功;
[0028]False表示操作失败。
[0029]与现有技术相比本专利技术的有益效果为:本专利技术可以在自动化测试过程中智能等待页面元素加载,等元素正确加载后操作元素,解决了以往自动化测试用例通过设置固定等待时间造成的计算机资源的浪费和执行效率低效下的问题。
附图说明
[0030]图1是本专利技术的结构示意图。
具体实施方式
[0031]下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。
[0032]如图1所示,智能等待页面元素加载操作页面元素,包括以下步骤:
[0033]S1、智能寻找元素;
[0034]S2、循环等待页面元素加载;
[0035]S3、操作页面元素;
[0036]S4、封装接口。
[0037]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S1具体步骤如下:
[0038]封装查询元素控件findElement(Stringkey,String...value):Selenium提供了
八种基本寻找页面元素的方式,分别是通过id、name、Xpath、tagName、calssName、CssSelector、linkText、partialLinkText寻找页面元素;
[0039]将id、name、xpath、className四种常用寻找元素的方式进行组合,合并成一个通用findElement方法,根据关键字key判断用何种方式寻找元素,关键字value表示查找的字段的字符串表示;
[0040]key的枚举值为ID、NAME、XPATH、CLASSNAME;value值为可变长的参数,限定为字符串类型,将单个原生方法合并为一个业务方法供其他程序调用。
[0041]本专利技术的智能等待页面元素加载操作页面元素,所述步骤S2具体步骤如下:
[0042]超时函数waitElement(inttimeOut):timeout为int类型的整数,单位为ms,表示查找元素的超时时间,在指定的超时时间内循环调用findElemen(Stringkey,Stringvalue)函数查找元素,每循环查找一次利用sleep()函数休眠500ms,同时超时时间减少50本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.智能等待页面元素加载操作页面元素,其特征在于,包括以下步骤:S1、智能寻找元素;S2、循环等待页面元素加载;S3、操作页面元素;S4、封装接口。2.如权利要求1所述的智能等待页面元素加载操作页面元素,其特征在于,所述步骤S1具体步骤如下:封装查询元素控件findElement(Stringkey,String...value):Selenium提供了八种基本寻找页面元素的方式,分别是通过id、name、Xpath、tagName、calssName、CssSelector、linkText、partialLinkText寻找页面元素;将id、name、xpath、className四种常用寻找元素的方式进行组合,合并成一个通用findElement方法,根据关键字key判断用何种方式寻找元素,关键字value表示查找的字段的字符串表示;key的枚举值为ID、NAME、XPATH、CLASSNAME;value值为可变长的参数,限定为字符串类型,将单个原生方法合并为一个业务方法供其他程序调用。3.如权利要求2所述的智能等待页面元素加载操作页面元素,其特征在于,所述步骤S3具体步骤如下:封装操作元素控件elementHandler(Stringkey,String...value):Selenium提供了多种不同的操作页面元素的方式,常...

【专利技术属性】
技术研发人员:朱泽张浩然赵梦然单酉
申请(专利权)人:北京航天云路有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1