【问题标题】:How to ignore protected Mode Settings for Internet Explorer using setCapability() through Selenium and Java?如何通过 Selenium 和 Java 使用 setCapability() 忽略 Internet Explorer 的受保护模式设置?
【发布时间】:2019-01-14 16:35:10
【问题描述】:

我正在尝试使用 IE 在 java selenium 中进行测试,但我的问题是我必须继续在受保护模式下配置设置,这是已弃用的替代方案 函数

WebDriver driver = new InternetExplorerDriver(cap);

因为我希望在没有人工干预的情况下实现自动化。我在 Eclipse 中使用此代码,它在我的代码中根本没有任何效果,上面用黄线荧光笔划掉,表示它已被弃用。那么是否有一个新功能可以实现这一点,这是我一直用于完整性检查的代码

DesiredCapabilities cap = DesiredCapabilities.internetExplorer();
cap.setCapability("nativeEvents", false);
cap.setCapability("unexpectedAlertBehaviour", "accept");
cap.setCapability("ignoreProtectedModeSettings", true);
cap.setCapability("disable-popup-blocking", true);
cap.setCapability("enablePersistentHover", true);
cap.setCapability("ignoreZoomSetting", true);
cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);

【问题讨论】:

    标签: java selenium selenium-webdriver selenium-iedriver mutablecapabilities


    【解决方案1】:

    感谢 DebanjanB 的回答,这正是我所需要的。但是我在DesiredCapabilities.internetExplorer(); 部分遇到了一些错误,这对我有用:

         InternetExplorerOptions cap = new InternetExplorerOptions();
         cap.setCapability("nativeEvents", false);
         cap.setCapability("unexpectedAlertBehaviour", "accept");
         cap.setCapability("ignoreProtectedModeSettings", true);
         cap.setCapability("disable-popup-blocking", true);
         cap.setCapability("enablePersistentHover", true);
         cap.setCapability("ignoreZoomSetting", true);
         cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
         WebDriver driver = new InternetExplorerDriver(cap);
    

    【讨论】:

      【解决方案2】:

      看来你快到了。您需要使用MutableCapabilities 类中的merge() 方法将DesiredCapabilities 类型的对象合并到InternetExplorerOptions 类型的对象中并启动WebDriver和 WebClient 实例通过传递 InternetExplorerOptions 对象如下:

      DesiredCapabilities cap = DesiredCapabilities.internetExplorer();
      cap.setCapability("nativeEvents", false);
      cap.setCapability("unexpectedAlertBehaviour", "accept");
      cap.setCapability("ignoreProtectedModeSettings", true);
      cap.setCapability("disable-popup-blocking", true);
      cap.setCapability("enablePersistentHover", true);
      cap.setCapability("ignoreZoomSetting", true);
      cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
      InternetExplorerOptions options = new InternetExplorerOptions();
      options.merge(cap);
      WebDriver driver = new InternetExplorerDriver(options);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多