我写了一个用于自动化的Selenium脚本,我正在使用HTMLUnitDriver在linux上运行它作为无头浏览。我有些担心——
- 当我尝试使用 WebDriver 运行相同的脚本时,即
WebDriver driver = new FirefoxDriver()
它运行良好。 - 但是当我尝试使用 HTMLUnitDriver 运行相同的脚本时,即
HTMLUnitDriver driver = new HTMLUnitDriver()
,我收到异常,异常如下:
org.openqa.selenium.TimeoutException: 等待元素可单击的 100 秒后超时: By.xpath:
我不明白此异常的根本原因是什么,因为相同的脚本正在运行,Firefox 或 chrome 驱动程序没有任何问题,但只有它不适用于 HTMLUnitDriver。我也尝试增加时间,但也没有帮助。
请任何人提供任何帮助,将不胜感激.....谢谢。
团队只是一个想法 - 首先这似乎是错误 - 等待元素可单击的 100 秒后超时: By.xpath:
这意味着在Webdriver中它已启用,HtmlUnit它被禁用?? ..我想知道由于任何原因,在两者中查找元素是否存在差异。
-
先
试试这个 火狐::使用火狐浏览器查找元素 - 检查是否启用。HTMLUnit::由于您提到它正在等待可单击并且错误未找到元素首先找到lement,然后下一行,显示元素是否已启用。
-
在它们之间,请检查该元素是否与您需要的元素相同。检查属性/文本或其他内容。
这将告诉您问题是元素本身还是其属性[启用/可单击]。
同样,您也可以检查 HTMLUnit 驱动程序,如果同一页面中的某些元素可查找和单击。