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

硒等待任何元素出现

佟英武
2023-03-14
问题内容

单击特定按钮时-我的测试站点将打开模式窗口。

但是模式窗口的打开是不同的 modal window 1 or modal window 2

两者都有不同的标题,不同的选项和不同的位置。现在我应该等到模态window open Either 1 or 2

是否可以等到任一模态窗口(WebElement)可见?

我已经在WebDriverWait方法中进行搜索,但是所有方法都必须等到特定的WebElement可见或可单击为止。

我找不到更好的方法来等到任何一个都可见。

您能提出一种解决这种情况的方法吗?


问题答案:

您可以为此使用or
预期条件

WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.or(
    ExpectedConditions.visibilityOfElementLocated(By.id("id1")),
    ExpectedConditions.visibilityOfElementLocated(By.id("id2"))
));

或使用cssSelector,

wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#id1, #id2"));


 类似资料:
  • 问题内容: 单击特定按钮时-我的测试站点将打开模式窗口。 但是模式窗口的打开是不同的 两者都有不同的标题,不同的选项和不同的位置。现在我应该等到模态。 是否可以等到任一模态窗口(WebElement)可见? 我已经在WebDriverWait方法中进行搜索,但是所有方法都必须等到特定WebElement可见或可单击为止。 我找不到更好的方法来等到任何一个都可见。 您能提出一种解决这种情况的方法吗?

  • 同时点击一个特定的按钮-我的测试站点将打开模式窗口。 我找不到更好的方法等到任何一个都可见的时候。 你能提出一个解决这种情况的方法吗?

  • 我有一个动态加载的页面,其中包含一个按钮。我正在尝试等待selenium使用C#绑定点击按钮。我有以下代码: 不过这不管用。click事件永远不会被触发。selenium脚本不会抛出异常警告ID为“addInspectionButton”的元素不存在。它只是不能点击它。如果我加一根线。Sleep(3000)在wait语句和我获得按钮元素句柄的那一行之间。 我没有使用预期条件.元素在这里正确点击吗?

  • 问题内容: 我试图让Selenium等待页面加载后动态添加到DOM的元素。试过这个: 如果有帮助,这里是: 但是它抛出一个-看起来像期望元素存在,所以这是有缺陷的。这一定是Selenium的面包和黄油,不想重新发明轮子……任何人都可以提出其他选择,理想情况下不用自己动手做? 问题答案: 需要等待时,您需要异常调用以忽略。 有关更多信息,请参见FluentWait文档。但是请注意,此条件已经在Exp

  • 下面是我为firefox浏览器初始化的selenium web驱动程序。 尽管我给出了隐式等待,但我没有等待元素。它会立即抛出not found异常。如果我放那么它工作正常,没有任何问题。但是把现在测试用例包含更多线程的任何地方。sleep比实际的测试用例代码低。有人能给我建议正确的方法吗?

  • 我正在使用Android Espresso Web测试Android应用程序中的Web视图。它需要一些时间来完成与加载网站。在对元素执行单击操作之前,我需要等待它显示出来。我能用什么API吗?我不想使用sleep()方法。