【问题标题】:Selenium- Popup got blocked if I clicked Link using Javascript Executor in Chrome browserSelenium- 如果我在 Chrome 浏览器中使用 Javascript Executor 单击链接,则弹出窗口被阻止
【发布时间】:2016-08-18 19:26:05
【问题描述】:

问题描述 - 单击页面上的链接后,弹出窗口被自动阻止。

   file = new File("tools/chromedriver.exe");
   System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
   caps.setCapability("ignoreZoomSetting", true);
   caps.setCapability("nativeEvents", false);
   driver = new ChromeDriver(caps);

使用环境 – Selenium WebDriver – 2.43.0 ChromeDriver, Windows 7

注意——它在 Firefox 和 IE 上运行良好,这个问题仅在 Chrome 上发生。

请协助。

【问题讨论】:

    标签: selenium selenium-webdriver webdriver selenium-chromedriver


    【解决方案1】:

    这是Chrome Option to disable all popups for the site

    • 打开 Chrome。
    • 查找为您屏蔽了弹出窗口的页面。
    • 在地址栏末尾,点击弹出窗口拦截器图标 chrome op-up 锁定。
    • 点击您想查看的弹出窗口的链接。
    • 要始终查看站点的弹出窗口,请选择始终显示来自 [站点] 的弹出窗口。 一旦你有了这个集合,使用它保存的配置文件来加载测试 另一种选择是打开站点并按 F5 键进行Cache Refresh Load a Profile。下面的代码是 C#,您没有指定语言。请查看为 Java 示例提供的链接
    ChromeOptions options = new ChromeOptions();
    userDataPath = "C:/Users/user_name/AppData/Local/Google/Chrome/User Data";
    options.AddArguments("user-data-dir=" + userDataPath);
    options.AddArguments("--start-maximized");
    driver = new ChromeDriver("pathToChromeDriver", options);
    

    【讨论】:

      【解决方案2】:

      您可以通过 chromeOption 来允许弹出,如下所示:

      Map<String, Object> prefs = new HashMap<String, Object>();
      prefs.put("profile.default_content_setting_values.popups", 1);
      ChromeOptions options = new ChromeOptions();
      options.setExperimentalOption("prefs", prefs);
      WebDriver driver = new ChromeDriver(options);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-27
        • 1970-01-01
        • 2015-05-05
        • 2016-12-10
        • 2011-06-03
        相关资源
        最近更新 更多