Как закрыть браузер firefox в селене 3.0.1
Firefox: 50.0.1, GeckoDriver:13, селен 3.01, IDE: Eclipse, Язык программирования: Java
Используя код ниже:
System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe);
WebDriver driver = new FirefoxDriver();
driver.get("https://www.youtube.com/");
driver.close(); Or driver.quit()
В driver.close() браузер не закрывается. В driver.quite() браузер закрывается, и Firefox падает. Ошибка: "Контейнер плагина для FireFox перестал работать".
Пожалуйста, дайте мне знать любое решение
4 ответа
Шаги, которые вы можете попробовать:
- Удалите все плагины в браузере Firefox.
- Используйте 64-разрядную версию geckodriver для 64-разрядного Firefox, аналогично 32-разрядному geckodriver для 32-разрядного Firefox.
Я пробовал код в той же среде, и driver.quit
работал на меня. driver.close
все еще не закрывает браузер.
Вы должны всегда использовать driver.quit()
когда вы хотите закрыть браузер, а не только одну вкладку.
Это исключение, к сожалению, является известной проблемой при выходе из экземпляра geckodriver firefox, подробности смотрите по этой ссылке.
https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/7506 https://bugzilla.mozilla.org/show_bug.cgi?id=1027222
Это похоже на проблему с геккодривером.
Обходной путь, который мне помог, заключался в установке более старой версии geckodriver, 0.20.1, которую вы можете скачать здесь: https://github.com/mozilla/geckodriver/releases/tag/v0.20.1
Вы можете создать новый профиль Firefox шаги можно найти здесь!
В вашем коде используйте этот новый профиль, созданный.
WebDriver webdriver;
ProfilesIni profile = new ProfilesIni();
FirefoxProfile myprofile = profile.getProfile("myProfileName");
webdriver = new FirefoxDriver(myprofile);
Теперь webdriver.quit(); закроет браузер Firefox после запуска теста.