【发布时间】:2017-12-07 10:04:42
【问题描述】:
我正在使用 java 和 selenium 编写自动化测试脚本。在这里,目标自动化组织有一些提醒弹出窗口,因此在我的结果中接收 driver.getWindowHandles() 命令的命令时会造成混淆。
我尝试下面的代码来尝试阻止 chrome 上的弹出窗口
System.setProperty("webdriver.chrome.driver", "//chrome path in system//");
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", "disable-popup-blocking");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(capabilities);
但它不起作用,它给出了以下错误并阻止 chrome 启动:
来自未知错误:无法解析 excludeSwitches
来自未知错误:必须是列表
那么我应该怎么做才能关闭这些弹出窗口。任何答案表示赞赏。我正在使用 chrome version: '2.29.461591' 和 java.version: '1.8.0_92'
【问题讨论】:
-
看看这个解决方法...stackoverflow.com/questions/7742852/…。我认为您应该查看“Md. Nazmul Haque Sarker”的答案,因为它似乎与当前的 chrome 版本更相关。
-
感谢您的回复。我是测试自动化的新手。我不清楚那个链接。在您建议的答案上。 css_selector_for_iframe = 'iframe[name="settings"]' driver.get('chrome://settings/content') iframe = driver.find_element_by_css_selector(css_selector_for_iframe) driver.switch_to_frame(iframe) driver.find_element_by_name('popups').click () click_element(driver, '#content-settings-overlay-confirm') driver.switch_to_default_content()
标签: java google-chrome selenium selenium-webdriver selenium-chromedriver