无法使用Selenium2(Webdriver)与Java一起启动IE浏览器

Lin*_*R M 56 java internet-explorer selenium-webdriver

我无法启动IE浏览器来运行用Java编写的selenium自动化测试.我正在使用Windows 7和IE 9.以下是我的代码:

请找到附件.在此输入图像描述

public class GoogleNews {
    private WebDriver driver;
    private String baseUrl;
    private StringBuffer verificationErrors = new StringBuffer();
    ArrayList al = new ArrayList();
    @Before
    public void setUp() throws Exception {
        //driver = new FirefoxDriver();
        driver =new InternetExplorerDriver();
        baseUrl = "https://news.google.co.in/";

    }

    @Test
    public void testApple() throws Exception {
        driver.get(baseUrl);
    }
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*edt 138

它需要在所有区域中设置相同的安全级别.为此,请按照以下步骤操作:

  1. 打开IE
  2. 转到工具 - > Internet选项 - >安全性
  3. 将所有区域(Int​​ernet,本地Intranet,受信任的站点,受限制的站点)设置为相同的保护模式,启用或禁用无关紧要.

最后,通过右键单击位于右上角的齿轮并启用状态栏,将"缩放"级别设置为100%.默认缩放级别现在显示在右下方.

  • 谢谢.我的代码现在在IE中工作正常. (4认同)
  • 我仍然认为它不适合我.我使用的是Win7和IEDriverServer_x64_2.43.0,即使按照说明操作也会出现此错误.错误是"org.openqa.selenium.remote.SessionNotFoundException:启动Internet Explorer时出现意外错误." (3认同)
  • 对我来说,它只适用于**所有人都被禁用**. (2认同)

nih*_*neo 20

就像堆栈跟踪所说的那样,您需要将IE中所有区域的保护模式设置设置为相同.在这里阅读原因:http://jimevansmusic.blogspot.in/2012/08/youre-doing-it-wrong-protected-mode-and.html

并快速如何从同一个链接:"在IE中,从工具菜单(或更高版本工具栏中的齿轮图标),选择"Internet选项."转到"安全"选项卡.在对话框的底部在每个区域中,您应看到一个标记为"启用保护模式"的复选框.将复选框的值设置为每个区域的相同值(选中或取消选中)"

  • +1。答案比接受的要好得多,因为链接的博客文章解释了原因-为什么将所有区域设置为受保护(接受的答案可能会误导您关闭保护模式) (3认同)

Rip*_*sim 12

以下WebDriver Java代码片段应该可以用于启动IE.代码将忽略IE浏览器中所有区域的保护模式设置的设置.

DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
File file = new File("D:\\Ripon Al Wasim\\IEDriverServer.exe");
System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
WebDriver driver = new InternetExplorerDriver(capabilities);
driver.get("https://www.google.com/");
Run Code Online (Sandbox Code Playgroud)

下载IEDriverServer并将其解压缩到您想要的位置并设置绝对路径(在上面的示例中,它是"D:\ Ripon Al Wasim\IEDriverServer.exe")

  • 请勿使用INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS.允许人们在无法正确配置浏览器的锁定环境中运行测试是一种破坏.使用此设置将产生随机故障和一般不稳定性.它绝不应该被用作理所当然的事. (7认同)