К сожалению, Selenium WebDriver 2.53.0 несовместим с Firefox 47.0. Компонент WebDriver, который обрабатывает браузеры Firefox ( FirefoxDriver
), будет прекращен. Начиная с версии 3.0, Selenium WebDriver потребуется geckodriver
двоичный файл для управления браузерами Firefox. Больше информации здесь и здесь .
Следовательно, чтобы использовать Firefox 47.0 в качестве браузера с Selenium WebDriver 2.53.0, вам необходимо загрузить драйвер Firefox (который представляет собой двоичный файл, называемый geckodriver
начиная с версии 0.8.0 и ранее wires
) и экспортировать его абсолютный путь к переменной webdriver.gecko.driver
как системное свойство в вашем Java-коде:
System.setProperty("webdriver.gecko.driver", "/path/to/geckodriver");
К счастью, библиотека WebDriverManager может сделать эту работу за вас, т.е. загрузить соответствующий двоичный файл Marionette для вашего компьютера (Linux, Mac или Windows) и экспортировать значение соответствующего системного свойства. Чтобы использовать эту библиотеку, вам необходимо включить эту зависимость в свой проект:
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>4.2.0</version>
</dependency>
... а затем выполните эту строку в своей программе перед использованием WebDriver:
WebDriverManager.firefoxdriver().setup();
Полный пример выполнения тестового примера JUnit 4 с использованием WebDriver может быть следующим:
public class FirefoxTest {
protected WebDriver driver;
@BeforeClass
public static void setupClass() {
WebDriverManager.firefoxdriver().setup();
}
@Before
public void setupTest() {
driver = new FirefoxDriver();
}
@After
public void teardown() {
if (driver != null) {
driver.quit();
}
}
@Test
public void test() {
// Your test code here
}
}
Учтите, что Marionette будет единственным вариантом в будущем (для WebDriver 3+ и Firefox 48+), но в настоящее время (версия 0.9.0 на момент написания) не очень стабильна. Взгляните на дорожную карту Marionette для получения дополнительной информации.
ОБНОВИТЬ
Selenium WebDriver 2.53.1 был выпущен 30 июня 2016 года. FirefoxDriver
Он снова работает с Firefox 47.0.1 в качестве браузера.