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

PageFactory中StaleElementReference

白高逸
2023-03-14

我正在尝试学习PageFactory模式。我理解了这样一个事实:当我们执行initelements时,就会找到WebElements。例如,我点击了一个webelement,因此DOM中的其他webelements中的一个发生了更改。现在,显然我将在这里得到一个StaleElementReferenceException。我该如何解决这个问题?

如果知道DOM中WebElement的属性可能发生变化,我是否应该再次找到特定的WebElement?还是有别的办法可以处理这件事?

共有1个答案

乐钱青
2023-03-14

StaleElementReferenceException扩展了WebDriverException,并指示元素的前一个引用现在已过时,并且该元素引用不再存在于页面的DOM上。

 类似资料:
  • 我们在C语言中有一个现有的UI自动化框架,根据我们使用PageFactory初始化页面文件中的元素时的知识。最近我读了更多关于这个主题的内容,在C中使用PageFactory似乎没有什么真正的好处,所以我尝试使用字段来重新编写页面。我现在有一个问题,那就是让我的扩展方法发挥作用。 例如:在当前实现中,我有一个如下标识的元素:[FindsBy(How=How.LinkText,Using=“Auth

  • 关于 PageFactory 的概念主要是Java中内置了PageFactory类。 import org.openqa.selenium.support.PageFactory; …… 例子,http://libin0019.iteye.com/blog/1260090   Python(Selenium)中没有这个类。 PageFactory 的概念和Page Object应该类似,属于

  • 我有一个Webelements列表,其中选择了一个随机元素。现在有了一个随机的webelement,我需要找到其中的所有子元素。我怎样才能在pagefactory中实现这一点。 在selenium中,这是有效的: 在页面工厂,我尝试过: 困在如何获取标题中的随机元素使用页工厂注释。 我知道这会奏效: 当我在整个项目中使用页面工厂注释时,有没有一种方法可以实现同样的效果。

  • 如果使用隐式和显式等待器,将发生以下错误:

  • 我在C#6中有一个Selenium WebDriver页面对象模型。在尝试单击ajax加载的导航栏元素时,我遇到了StaleElementReferenceException。这很混乱,因为我使用的是页面工厂,没有任何缓存查找。 这是有问题的代码。我试着把重要的部分简单化。(我实际上传递了一个驱动程序,一个包装器,包装了IWebDriver)<代码>菜单栏。选择英语 导致此错误的原因是什么?我该怎

  • 我正在我的页面对象模型自动化框架中实现pagefactory。我现有的框架在没有pagefactory的情况下运行良好。现在我正在实现pagefactory来调用元素。我面临Pagefactory元素抛出空值的问题。我怀疑这可能是因为施工人员不确定。 我已经建立了一个基于页面对象模型的框架有如下包:-com.automationframeworkcom.configutaioncom.page对象