Selenium:是什么导致 FindElement 什么也没带回来?
Selenium: What causes an FindElement to bring back nothing?
我很好奇什么会导致 FindElement 方法返回任何内容(非空),即使该元素在页面上和 HTML 中。每隔一段时间,当我的代码中有一个 Assert.AreEqual 方法时,它就会出现这个问题。
我的断言通常如下所示:
Assert.AreEqual(stringValue, FindElement(By.XPath("<XPath path>")).Text);
错误消息返回说 FindElement 返回为“<>”,就像没有值一样。有没有可能是我的脚本运行得太快而跳过了它,或者是否存在其他一些下划线问题。
当您网页上的这段文字实际上并未存储为 innerHTML 时,可能会发生这种情况,它可能位于您元素的 value
属性 中,并且在使用 Text 方法时您只会获得 innerHTML,因此它看起来它是空的。
尝试使用 GetAttribute,检查您的元素以了解它如何存储此文本。
希望我正确理解了您的问题。 :D
我很好奇什么会导致 FindElement 方法返回任何内容(非空),即使该元素在页面上和 HTML 中。每隔一段时间,当我的代码中有一个 Assert.AreEqual 方法时,它就会出现这个问题。
我的断言通常如下所示:
Assert.AreEqual(stringValue, FindElement(By.XPath("<XPath path>")).Text);
错误消息返回说 FindElement 返回为“<>”,就像没有值一样。有没有可能是我的脚本运行得太快而跳过了它,或者是否存在其他一些下划线问题。
当您网页上的这段文字实际上并未存储为 innerHTML 时,可能会发生这种情况,它可能位于您元素的 value
属性 中,并且在使用 Text 方法时您只会获得 innerHTML,因此它看起来它是空的。
尝试使用 GetAttribute,检查您的元素以了解它如何存储此文本。
希望我正确理解了您的问题。 :D