当前位置: 首页 > 知识库问答 >
问题:

Selenium获取快速变化的元素StaleElementReferenceException的值

金珂
2023-03-14
String timeLeftString = driver.findElement(By.xpath(timerXpath)).getText();

如何测试这种元素的值?

共有1个答案

熊嘉茂
2023-03-14

以下是您的问题的解决方案

我建议您将FluentWait引入特定元素。下面介绍一下FluentWait,它适用于在动作发生后以特定间隔可见的元素。例如,一个下拉菜单可以包含3个项目,每次只显示一个项目,时间间隔为3秒。因此,在执行所需的操作之后,您必须诱导FluentWait,它将在定义的时间间隔(250毫秒)内轮询特定元素的属性(visibility_of_the_element或element_to_be_clickable)。此外,您还可以灵活地指定处理异常,即使它可能发生在定义的总间隔内,这样您的测试案例就不会失败。

如果这个解决方案对你有用,请告诉我。

 类似资料:
  • 嗨,我是硒的新手 我正在使用,已经尝试了和驱动程序。 我正在运行一个循环。有趣的是,循环有时会工作3、2次,它并不总是在同一次迭代中失败。我假设它与某种竞争条件有关(例如等待页面加载)。如果我在调试模式下运行,它似乎可以完美地工作。 我已经尝试了其他答案的建议,比如显式等待和隐式等待,但仍然没有帮助。也许如果你看到密码你可以帮我一把。 这是一个循环。 解决方案 解决方案是彻底破解。我仍然不明白,但

  • 我试图从网站中的元素中提取文本。HTML代码如下所示: 下面是我的代码:

  • 我需要访问'Enterprise'和'Enter'文件夹的folderId。 这是我的代码: 字符串S1=driver.findElement(By.xpath(“//SPAN[.='\”Enterprise\“']/祖先::pre/follows-sibling::pre[1]/SPAN[2]”)).getText(); 我想打印字符串s1和s2的值,而不带COTES。我可以访问'Enterpr

  • 根据以下示例HTML查找元素下面的元素:

  • 我在Python(3.6.3)代码中得到了这个HTML元素(当然作为Selenium webelement): 很明显,我不能使用,因为我不知道属性的名称...

  • 我在使用@findby获取和使用Select元素时遇到了困难。 标记: 注意:我当然正在初始化页面对象: