自Chrome 71以来,它运行完美。
executor.executeScript("document.querySelector(\"print-preview-app\").shadowRoot.querySelector(\"print-preview-header\").shadowRoot.querySelector(\"paper-button.cancel-button\").click();");
但它不再起作用。
有没有人想出一种方法可以在Chrome 75的打印预览中单击“取消”?
我捕获到异常,它只是说:
e:org.openqa.selenium.WebDriverException: unknown error: Cannot read property 'shadowRoot' of null
在75.0.3770.142(Official Build)(64位)版本上进行了测试。它们现在具有其他元素
<print-preview-sidebar id="sidebar"></print-preview-sidebar>
用于控制台中的测试
document.querySelector("print-preview-app").shadowRoot.querySelector("print-preview-sidebar").shadowRoot.querySelector("print-preview-header").shadowRoot.querySelector("paper-button.cancel-button").click()
与executor.executeScript
executor.executeScript("document.querySelector(\"print-preview-app\").shadowRoot.querySelector(\"print-preview-sidebar\").shadowRoot.querySelector(\"print-preview-header\").shadowRoot.querySelector(\"paper-button.cancel-button\").click();")
编辑 ::对于版本 79.0.3945.88 (官方内部版本)(64位)
document.querySelector("print-preview-app").shadowRoot.querySelector("print-preview-sidebar").shadowRoot.querySelector("print-preview-button-strip").shadowRoot.querySelector("cr-button.cancel-button").click()