iRu*_*ner 6 java htmlunit-driver
我想在java中使用HTMLUnitDriver处理警报.我使用以下代码来使用firefox驱动程序处理警报,它工作正常.
Alert alert = driver.switchTo().alert();
alert.accept();
Run Code Online (Sandbox Code Playgroud)
但HTMLUnitDriver给出的错误就像
java.lang.UnsupportedOperationException: alert()
Run Code Online (Sandbox Code Playgroud)
如何处理警报箱?
Ste*_*yts -1
在 HTMLUnitDriver 中实现警报 API 的请求几年前就已提出。这是链接:
由于这似乎是一个很难破解的难题,因此您必须考虑一些技巧来规避 JavaScript 中的模式对话框(警报、确认等)。至少在他们实现警报 API 之前是这样。
阻止显示模式对话框的技巧包括向 Selenium 脚本添加额外的 JavaScript。例如,更改回调函数以避免出现警报框。
另外,请注意,无法使用 JavaScript 本身关闭/取消/确认模式对话框。这就是为什么你应该阻止它们出现的原因。这是出于安全原因。
在实现警报 API 之前,这是使用 HtmlUnitDriver 处理它的唯一方法。