2015-12-03 3 views
6

Начиная только прошлой ночью FirefoxDriver всегда открывался на этой странице: https://www.mozilla.org/en-US/firefox/42.0/firstrun/learnmore/. Я попытался изменить настройки профиля по умолчанию и не имел никакого успеха.FirefoxDriver всегда начинается со страницы «firstrun», нарушая все тестовые скрипты

Следующий вопрос, http://stackoverflow.com/questions/33937067/firefox-webdriver-opens-first-run-page-all-the-time, аналогичен, но я не вижу, где реализовать четыре строки кода, и мои личные попытки бросить его в мои скрипты оказались тщетными.

Эта проблема началась совершенно неожиданно ночью. Сегодня у меня есть презентации, и я не могу заставить ни один из моих скриптов работать.

Инстанцирование мой экземпляр WebDriver как и вызовет NoSuchMethodError:

   FirefoxProfile profile = new FirefoxProfile(); 
       profile.setPreference("browser.startup.homepage", "about:blank"); 
       profile.setPreference("startup.homepage_welcome_url", "about:blank"); 
       profile.setPreference("startup.homepage_welcome_url.additional", "about:blank"); 
       driver = new FirefoxDriver(profile); 
       driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 

Но избавившись от profile в FirefoxDriver возвращает его к FirstRun странице, упомянутой выше.

ответ

2

Перейти к профилю менеджер с помощью «Firefox.exe - р»

Вы будете иметь более одного профиля. Выберите профиль по умолчанию и сделайте его по умолчанию все время.

Не следует открывать эту страницу. Я тестировал и отлично работает.

Вы можете попробовать этот код. Я уверен, что это сработает.

ProfilesIni profile = new ProfilesIni(); 
    FirefoxProfile ffprofile = profile.getProfile("default"); 
    WebDriver driver = new FirefoxDriver(ffprofile); 
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
+0

У меня такая же проблема, как у @jagdpanzer. У меня только один профиль Firefox по умолчанию (следуя их руководству: https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles). Можете ли вы указать, где должен использоваться этот код, и находится ли он в существующем файле или только что созданном (в каком экземпляре должно быть указано его имя)? Благодарю. –

+0

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

+0

У меня только один профиль. Но открываются страницы первой очереди – Crusader

11

Я с этой проблемой при работе с RSpec/Капибара тесты с использованием Selenium WebDriver и Полтергейст с Firefox в качестве браузера для приложения Rails. Пробовал реконфигурации Firefox различными способами но безрезультатно, но удалось зафиксировать простым обновлением селеном WebDriver драгоценный камень в моей Gemfile (gem 'selenium-webdriver'):

bundle update selenium-webdriver

Заслуга @lucetzer

3

У меня было то же самое проблема с первой страницы запуска, после некоторых поисков я обнаружил, что это работает для меня (я использую WebDriver 2.53.0 и FF 45.0.1):

FirefoxProfile profile = new FirefoxProfile(); 
profile.setPreference("browser.startup.homepage_override.mstone", "ignore"); 
profile.setPreference("startup.homepage_welcome_url", "about:blank"); 
profile.setPreference("startup.homepage_welcome_url.additional","about:blank"); 
profile.setPreference("browser.startup.homepage","about:blank"); 
WebDriver driver = new FirefoxDriver(profile); 
0

Существует проблема с сертификатами в первом УЗД выполнения зольный экран главной страницы Mozilla. Я подал билет на это в Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1269500

Чтобы устранить эту проблему в Selenium/Capybara/Cucumber, нам нужно изменить домашнюю страницу по умолчанию для новых профилей на пустой или другой странице. Для этого зарегистрируйте драйвер firefox/selenium в конфигурации:

Capybara.register_driver :firefox do |app| 
    profile = Selenium::WebDriver::Firefox::Profile.new 
    profile['browser.startup.homepage_override.mstone'] = 'ignore' 
    profile['startup.homepage_welcome_url.additional'] = 'about:blank' 

    Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => profile) 
end 
Смежные вопросы