我有点卡住了。 当我与页面交互时,我可能会尝试单击另一个元素所覆盖的元素。
Chromedriver提出异常
“ClickElement未知错误:元素....在点(190,567)处无法点击。 其他元素将收到点击:“
我正在使用JSONWired协议,/click
命令的结果是一个巨大的JSON,其中包含此处描述的所有字段:https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol#failed-commands,包括screen
属性,该截图是页。
在引发异常时是否有开关或设置或标志或某些东西禁用获取屏幕截图?页面非常大,获取屏幕截图需要3-4秒。我只是不需要它。
答案 0 :(得分:0)
在尝试点击你的网页元素之前,你可以尝试调用这个等待ajax空闲的方法:
public static void waitForJQueryToBeActive() {
Boolean isJqueryUsed = (Boolean) ((JavascriptExecutor) driver)
.executeScript("return (typeof(jQuery) != 'undefined')");
if (isJqueryUsed) {
while (true) {
// JavaScript test to verify jQuery is active or not
Boolean ajaxIsComplete = (Boolean) (((JavascriptExecutor) driver)
.executeScript("return jQuery.active == 0"));
if (ajaxIsComplete)
break;
try {
Thread.sleep(100);
} catch (InterruptedException e) {
}
}
}
}