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

wait.until(ExpectedConditions.visibilityOf Element1或Element2)

谯德佑
2023-03-14
问题内容

我想使用wait.until(ExpectedConditions)两个元素。我正在运行测试,需要WebDriver等到
Element1或Element2 中的任何一个出现。然后,我需要选择谁首先出现。我试过了:

WebDriverWait wait = new WebDriverWait(driver, 60); 
    wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//h2[@class='....']"))) || wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//h3[@class='... ']")));

        // Then I would need:

String result = driver.findElement(By.xpath("...")).getText() || driver.findElement(By.xpath("...")).getText();

总结起来,我需要等到两个元素中的任何一个出现。然后选择出现的任何人(他们不能同时出现)。


问题答案:

不幸的是,没有这样的命令。您可以通过尝试捕获来克服这一点,或者我最好建议您使用开源Ruby库Watir。



 类似资料:
  • 问题内容: 到目前为止,我使用的是2.45.0版本的selenium,所有等待都以这种方式完成: 但是我将selenium更新为3.1.0,但出现错误: “类型FluentWait中的直到(Predicate)方法不适用于参数(ExpectedCondition)” 我看到从2.45.0到3.1.0不再支持某些功能。我正在尝试研究什么是现在最好的方法,但是我不确定。我在Google上找到的大多数内

  • 问题内容: 在带有Python的Selenium Webdriver中,我想等待Ajax请求完成(jquery库)。我使用Selenium的wait.until()函数。单击submitJquery按钮后,Ajax请求开始。 但我得到以下错误: 完整的代码是: 提前致谢。 问题答案: 您需要将 可调用对象 传递给:

  • 我不熟悉Selenium,也不熟悉Java。我是一名测试人员,而不是开发人员,所以我正试图逐渐将我的Selenium IDE脚本转换成更健壮和“合适”的东西。不幸的是,我正在努力完成一项相当基本的任务。网页加载后,我想单击一个按钮。这在Selenium IDE中运行良好,但前提是我将速度设置为“slow”。 我可以使用下面的代码让它工作,但前提是我包含了线程。睡眠线。我已经读到这不是一个好主意,所

  • 问题内容: 定义简单单击JButton的行为时,哪种方法正确?而且,有什么区别? 要么 问题答案: 是Swing中的低级事件侦听器(顺便说一下,也是AWT)。 是更高级别的,应该使用。 比起更好的选择,应该使用(实际上是)。 使用允许在多个小部件(例如,…)之间共享它;您不仅可以共享按下按钮/菜单时触发的代码,还可以共享状态,尤其是可以共享操作(及其关联的小部件)是否处于启用状态。