Как загрузить определенный профиль Firefox с помощью Selenium webdrivermanager?

Я пытаюсь использовать библиотеку webdrivermanager для загрузки драйвера firefox в моих тестах на селен. Я не могу загрузить определенный профиль Firefox с помощью этой библиотеки. Вот что я пытаюсь сделать:

FirefoxDriverManager.getInstance().setup() // To instantiate the firefox driver 

ProfilesIni Prof = new ProfilesIni();

FirefoxProfile profile = Prof.getProfile("C:\\Users\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\6xv9ndwh.SELENIUM");

WebDriver driver = new FirefoxDriver(profile);

Но это создает новый драйвер и не заставляет драйвер, созданный firefoxdrivermanager, использовать определенный профиль.

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

System.setProperty("webdriver.gecko.driver", "C:\\geckodriver\\geckodriver-v0.20.0-win64\\geckodriver.exe");

ProfilesIni allProfiles = new ProfilesIni();

FirefoxProfile Profile = allProfiles.getProfile('default');

Profile.setAcceptUntrustedCertificates(true);

Profile.setAssumeUntrustedCertificateIssuer(false);

driver = new FirefoxDriver(Profile);

Может кто-нибудь помочь мне в этом, пожалуйста?

2 ответа

Прежде всего, создайте новый профиль Firefox. Для этого выполните следующие действия: 1. Запустите эту команду firefox.exe -p в окне запуска.

Появится это диалоговое окно создания профиля с новым именем и выхода из окна.

После этого выполните эту команду в webdriver

  System.setProperty("webdriver.firefox.marionette", "Path to the exe of firefox driver");
    ProfilesIni profile = new ProfilesIni();

    FirefoxProfile myprofile = profile.getProfile("UrProfile Name which u created");
    WebDriver driver = new FirefoxDriver(myprofile);

    driver.get("http://www.google.com");

Надеюсь, это поможет вам...

Это сработало для меня (хотя и не использовал webdrivermanager) для создания экземпляра веб-драйвера с использованием Gradle:

 DesiredCapabilities capabilities = DesiredCapabilities.firefox();
 capabilities.setCapability("marionette", true);
 capabilities.setCapability("acceptInsecureCerts", true);
 driver = {new FirefoxDriver(capabilities)}
Другие вопросы по тегам