Как добавить в драйвер firefox параметры при использовании WebDriverFactory


(Luisa S) #1

Добрый день! Нужно запустить тесты на Jenkin's c использованием библиотеки WebDriverFactory.
До ее применения тесты запускались так:

	 FirefoxProfile profile = new FirefoxProfile();
	 profile.setPreference("intl.accept_languages", "ru");
	 String Xport = System.getProperty("lmportal.xvfb.id", ":0");
             public void setUp() throws Exception {
	 "lmportal.deploy.firefox.path", "/usr/bin/firefox"));
	 FirefoxBinary binary = new FirefoxBinary(firefoxPath);
	 binary.setEnvironmentProperty("DISPLAY", Xport);
	 driver = new FirefoxDriver(binary, profile);
	 driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);

Как поместить profile и binary в capabilities и запрашивать драйвер с этими настройками?

WebDriver driver = WebDriverFactory.getDriver(firefox);


(Luisa S) #2

Тесты запускаются на jenkins, использую ant и junit


(Александр Таранков) #3

Гугл выдает информацию о нескольких реализациях WebDriverFactory. Какая используется у вас? Скиньте ссылку на документацию, которой вы пользуетесь?


(Luisa S) #4

http://selenium2.ru/articles/112-webdriverfactory.html


(heartwilltell) #5

Тагните Баранцева в эту тему - он ее писал, он Вам и подскажет smile

И немного офтопа: всегда интересовало что толкает людей на использование виртуальных рабочих столов в тестах, в то время, когда ресурсы для поднятия нужной тебе среды с графическим окружением стоят копейки.
Все эти виртуал фреймбаферы вечно чреваты последствиями, да и селениум тесты должны быть максимально приближенными к действиям реального пользователя.
Ну а если у вас суто функционалка не завязанная на UI то заюзайте HtmlUnit или PhantomJS


(Luisa S) #6

Разобралась как два параметра указывать. Но виртуалка теперь не headless)

	        public static WebDriver driver;

	public void startBrowser() throws Exception {
	 FirefoxProfile profile = new FirefoxProfile();
	 profile.setPreference("intl.accept_languages", "ru");
	 String Xport = System.getProperty("lmportal.xvfb.id", ":0");
	 final File firefoxPath = new File(System.getProperty(
	 "lmportal.deploy.firefox.path", "/usr/bin/firefox"));
	 FirefoxBinary binary = new FirefoxBinary(firefoxPath);
	 binary.setEnvironmentProperty("DISPLAY", Xport);
	 DesiredCapabilities firefox = DesiredCapabilities.firefox();
	 firefox.setCapability(FirefoxDriver.PROFILE, profile);
	 firefox.setCapability(FirefoxDriver.BINARY, binary);
	 driver = WebDriverFactory.getDriver(firefox);
	 driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
}