当前位置: 首页 > 面试题库 >

控制browser.wait()的轮询频率(Fluent等待)

方昊
2023-03-14
问题内容

故事:

在Javaselenium语言绑定中,有一个FluentWaitclass,它可以严格控制如何检查期望的条件:

每个FluentWait实例都定义了等待条件的最长时间,以及检查条件的频率。此外,用户可以配置等待以在等待时忽略特定类型的异常,例如在页面上搜索元素时的NoSuchElementExceptions。

换句话说,可以更改应用预期条件检查的轮询间隔,默认情况下为500毫秒。另外,可以设置要忽略的异常。

它也可以在Python,有相关的poll_frequencyignored_exceptions参数WebDriverWait类。

问题:

在Protractor / WebDriverJS中使用时,是否可以控制 轮询频率 以验证预期条件browser.wait()

根据browser.wait()文档,只有3个可能的参数:预期条件的函数,超时值和可选的超时错误消息。我希望可以使用其他设置或方式来更改轮询频率。


问题答案:

在@Kirill
S.的帮助下,经过进一步的研究和检查了WebdriverJS代码,我可以得出结论,
javascript硒绑定中没有“轮询频率”之类的东西 。无法配置后续条件检查调用之间的间隔-它会尽快执行检查。

例如,在Python或Java硒绑定中
,这与预期条件状态检查之间存在可配置的超时时间不同。默认情况下,它将等待500毫秒再进行下一次检查:

默认情况下,WebDriverWait每500毫秒调用ExpectedCondition,
直到成功返回。对于ExpectedCondition类型,成功返回是Boolean返回true,对于所有其他ExpectedCondition类型,返回值不为null。



 类似资料:
  • 我使用DefaultMessageListenerContainer来消费ActiveMQ队列中的消息,如下所示。在这种实现中,是否有轮询机制,侦听器是否每隔1秒左右轮询队列以查看是否有新消息,或者是否在队列中有新消息时调用onMessage方法?如果使用轮询,我们如何增加或减少轮询频率(时间)。

  • 有没有办法设置(即减少)套接字的轮询频率。使用长轮询传输时的IO (v4.4)?在服务器上还是在客户机上? 文档中描述了长轮询传输,通常在无法建立 WebSocket 连接时充当回退(但可以显式设置): 套接字之间的双向通道。IO服务器(Node.js)和套接字。IO客户端(browser、Node.js或其他编程语言)尽可能使用WebSocket连接建立,并将使用HTTP长轮询作为后备。

  • 频率控制是控制资源利用和保证服务高质量的重要机制。Go可以使用goroutine,channel和ticker来以优雅的方式支持频率控制。 package main import "time" import "fmt" func main() { // 首先我们看下基本的频率限制。假设我们得控制请求频率, // 我们使用一个通道来处理所有的这些请求,这里向requests

  • 本文向大家介绍python轮询机制控制led实例,包括了python轮询机制控制led实例的使用技巧和注意事项,需要的朋友参考一下 我就废话不多说了,大家还是直接看代码吧! 轮询1.txt 1则点亮 0则关闭 补充知识:python笔记(轮询、长轮询) 一、轮询 views.py html 二、长轮询 views.py html 以上这篇python轮询机制控制led实例就是小编分享给大家的全部内

  • 本文向大家介绍C ++中的最大相等频率,包括了C ++中的最大相等频率的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个正整数的数组num,我们必须返回给定数组num的数组前缀的最大可能长度,这样就可以从该前缀中精确删除一个元素,以便其中出现的每个数字都会具有相同的频率。如果没有剩余元素,则删除一个元素后,仍会认为每个出现的数字具有相同的频率。 因此,如果输入类似于[3,3,2,2,6,4,

  • 问题内容: 我有一张表,上面有像 我想做一张像这样的桌子 等等。 问题答案: WITH basedata(id,keywords) AS ( SELECT 1,’cat, dog, man, mouse’ union all SELECT 2 ,’man, pen, pencil, eraser’ union all SELECT 3,’dog, man, friends’ union all S