Перейти к содержимому

Фотография

Как скормить кастомный профиль серверу Selenium 2.0?


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 kvarik

kvarik

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Борис Ходок

Отправлено 26 июля 2011 - 13:50

Запускаю вот так:

java -jar /home/selenium/selenium-server-standalone-2.1.0.jar -role webdriver -hub http://localhost:4444/grid/register -firefoxProfileTemplate ./profiles/selenium.default

В идеале при запуске сервер должен скушать профиль, который я ему подсовываю.
Особенность профиля, что там вшиты сертификаты, без которых тесты глохнут.

Пробовал отправлять при создании экземпляра вот так:
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
        FirefoxProfile profile = new FirefoxProfile();
        profile.setAssumeUntrustedCertificateIssuer(true);
        profile.setAcceptUntrustedCertificates(true);
        capabilities.setJavascriptEnabled(true);
        capabilities.setCapability(FirefoxDriver.PROFILE, profile);    
        driver = new RemoteWebDriver(new URL("http://192.168.100.84:4444/wd/hub"), capabilities);

В первом случае файрфокс запускается, но профиль не загружается.
Во втором - всё глохнет со страшными ругательствами.

Печаль :(
  • 0

#2 OShmelev

OShmelev

    Новый участник

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Шмелев Олег Андреевич

Отправлено 27 июля 2011 - 12:55

Присоединяюсь к вопросу.
  • 0

#3 AntonP

AntonP

    Новый участник

  • Members
  • Pip
  • 8 сообщений
  • ФИО:Перепеча Антон Юрьевич
  • Город:Минск

Отправлено 02 августа 2011 - 10:45

в первом случае попробуйте вот так: -firefoxProfileTemplate profiles/selenium.default
Если папка profiles находится в той же директории что и сервер, то вот так должно получиться.

а для второго случая, могу показать кусочек настройки селениум сервера 1
RemoteControlConfiguration rcc = new RemoteControlConfiguration();
				File seleniumLog;
				seleniumLog = new File("target/logs/seleniumLog.log");
				File ffprofile;
				ffprofile = new File("src/main/resources/ProfileFF");
                                rcc.setFirefoxProfileTemplate(ffprofile);
				// Config RC Server
				rcc.setSingleWindow(true);
				rcc.setPort(port);
				File userExt = new File(
						"src/main/resources/files/user-extensions.js");
				rcc.setUserExtensions(userExt);
				rcc.setTrustAllSSLCertificates(true);
				server = new SeleniumServer(rcc);

  • 0

#4 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 02 августа 2011 - 13:54

в первом случае попробуйте вот так: -firefoxProfileTemplate profiles/selenium.default
Если папка profiles находится в той же директории что и сервер, то вот так должно получиться.

а для второго случая, могу показать кусочек настройки селениум сервера 1

Ну путайте, всё, что Вы написали, относится к Selenium Classic, тогда как топикстартер спрашивал про WebDriver.

Передача профиля реализована правильно во втором случае, опция -firefoxProfileTemplate используется для Selenium Classic, при работе с WebDriver нужно указывать профиль в DesiredCapabilities, и это сделано корректно.
А вот почему не работает с сертификатами -- вероятно, это вот этот баг: http://code.google.c.../detail?id=2044 , попробуйте использовать воркэраунд, который там предложен. Ну и надеюсь, что вскоре исправят :)
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных