Selenium WebDriver + Firefox哪个版本运行正常?

时间:2016-02-08 12:38:33

标签: java eclipse junit4 selenium-firefoxdriver

我正在编写一个自动化脚本来测试网站登录。通过Firefox IDE,我编写了TestCase步骤,它执行正常。我将测试用例导出为与jUnit 4兼容的java代码。

当我尝试通过Eclipse(使用firefox浏览器)运行java代码时,它会打开Mozilla主页或空白页或代理问题(如果我的机器连接到公司LAN)。

我使用的是Selenium 2.44和Firefox 44版.. 另外我在一些网站上读到关于firefox与selenium web驱动程序的兼容版本。我很困惑这个。

请告诉我哪个版本的Selenium Web驱动程序,Firefox& Java是首选.. !!!

在下面添加我的java代码

public class Firefox {
private WebDriver driver;
private String PROXY = "proxy address:port";
private String baseUrl;
private boolean acceptNextAlert = true;
@Before
public void setUp() throws Exception {
// Code for setting up Firefox proxy
Proxy proxy = new org.openqa.selenium.Proxy();
proxy.setHttpProxy(PROXY)
.setFtpProxy(PROXY)
.setSslProxy(PROXY);
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(CapabilityType.PROXY, proxy);
driver = new FirefoxDriver(cap);
baseUrl = "url";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
@Test
public void testFirefox() throws Exception {
driver.get(baseUrl);
for (int second = 0;; second++) {
if (second >= 60) fail("timeout");
try { 
if ("".equals(driver.findElement(By.id("userId")).getText())) break; 
}
catch (Exception e) {}
Thread.sleep(1000);
}
driver.findElement(By.id("userId")).sendKeys("user name");
driver.findElement(By.id("pwd")).sendKeys("password");
driver.findElement(By.id("sign-in")).click();
}
}

3 个答案:

答案 0 :(得分:0)

我发现的最新稳定兼容配置我使用的是selenium Webdriver 2.48.2和Firefox 41.0.2

答案 1 :(得分:0)

https://www.mozilla.org/en-US/firefox/organizations/all/

下载Firefox ESR

Firefox的稳定版浏览器与Webdriver 2.48.2兼容。 Selenium WebDriver 2.48.2不适用于FF 44。

答案 2 :(得分:0)

最新的Firefox总是使用最新版本的Selenium(2.x版本)来处理所有非本机事件,例如JavascriptExecutor事件,但是有一些本机事件(例如driver.navigate.to()和驱动程序除了最后一个已知的原生支持版本的Firefox 31.6.0 ESR之外,.click()将无法工作。有可能ESR的更高版本可以使用,但我没有在任何地方阅读过。