5

我在 Selenium IDE 中记录了我的测试;它在 Firefox 和 Chrome 中运行良好。当我在 IE 9 中运行它时,我不断收到此错误。我是编码新手,无法找到答案。如果有人可以用外行的方式向我解释正在发生的事情/为什么会这样,我将不胜感激。

org.openqa.selenium.NoSuchElementException: Unable to find element with css selector == BODY (WARNING: The server did not provide any stacktrace information)

Java 代码:

assertTrue(driver.findElement(By.cssSelector("BODY")).getText().matches("^[\\s\\S]*Final[\\s\\S]*$"));
4

3 回答 3

0

我建议在调用之前打印出 driver.getPageSource() 并检查当前页面上的 html 是否符合您的期望。

如果它确实符合您的预期,那么我将打印出所有匹配的标签的文本内容,By.cssSelector("BODY")并查看它们是否包含您所期望的文本。

这将缩小错误所在的范围 - 您可能需要找到另一种查找此元素的方法。

于 2012-11-28T20:46:16.113 回答
0

内部通过使用 XPath 和 Internet Explorer 的大小写问题。

尝试使用

assertTrue(driver.findElement(By.cssSelector("body")).getText().matches("^[\\s\\S]*Final[\\s\\S]*$"));

代替

assertTrue(driver.findElement(By.cssSelector("BODY")).getText().matches("^[\\s\\S]*Final[\\s\\S]

*$"));

我相信这对你有用。

于 2013-11-06T23:48:05.240 回答
0

IE 浏览器不支持不区分大小写的 CSS 属性选择器。尝试使用

driver.findElement(By.cssSelector("body"));
于 2020-04-14T21:12:14.157 回答