繁体   English   中英

对Internet Explorer使用Selenium webdriver。 测试不会运行

[英]Using Selenium webdriver for Internet Explorer. Tests won't run

我目前正在扩展测试,以使用用于IE的Selenium Webdriver(IEDriverServer.exe)涵盖Internet Explorer。

我的问题是,当我使用IE Webdriver执行测试时。 当我运行测试时,Internet Explorer Webdriver会打开,我可以输入地址,但是当涉及到实际执行其余脚本(例如,输入链接,按下各种按钮等)时,测试由于超时而崩溃。

注意:测试将按预期在Chrome和Firefox上执行。

编辑:

    try {           
driver.findElement(By.id("topmenuImg")).click();        
}       
    catch (NoSuchElementException ex) {             
JOptionPane.showMessageDialog(null, "Not possible");        
}

IE硒

使用所需功能并禁用IE浏览器中的保护模式

// Tomcat:apache-tomcat-7.0.37\webapps\ROOT\iedriver32\IEDriverServer.exe

String dreiverFromServer = "http://localhost:8088/iedriver32/IEDriverServer.exe"
File ietmp = File.createTempFile("iedriver", null).setExecutable(true);
FileUtils.copyURLToFile(new URL( dreiverFromServer ), ietmp);
System.setProperty("webdriver.ie.driver", ietmp.getAbsolutePath());
                     (OR)
System.setProperty("webdriver.ie.driver", "D:\\iedriver64\\IEDriverServer.exe");

DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
ieCapabilities.setCapability("ensureCleanSession", true);
ieCapabilities.setCapability("ignoreZoomSetting", true);
ieCapabilities.setCapability("ignoreProtectedModeSettings", true);
ieCapabilities.setCapability("ignore-certificate-error", true);
ieCapabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

driver = new InternetExplorerDriver(ieCapabilities);

在此处输入图片说明

IE 11在目标计算机上设置注册表项,以便驱动程序可以维持连接

当您在firefox中运行测试时,Internet Explorer速度非常慢,因为Firefox搜索非常快,因此添加了适当的等待时间并增加了定位对象的时间,因此将Internet Explorer的速度提高到2分钟= 120秒

C#示例是

InternetExplorerDriver driver = new InternetExplorerDriver(@"c:\path", options, TimeSpan.FromMinutes(2));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM