Как запустить несколько версий Geckodriver через System.setProperty () - PullRequest
2 голосов
/ 04 февраля 2020

Не знаю, наблюдаю ли я за чем-то, но возможно ли использовать несколько версий geckodriver в одной и той же JVM?

Проблема в

System.setProperty("webdriver.gecko.driver", "path of the geckodriver1");
driver1 = new FirefoxDriver();

System.setProperty("webdriver.gecko.driver", "path of the geckodriver2");
driver2 = new FirefoxDriver();

, где я будет определять системное свойство. Для одного экземпляра это не проблема и работает нормально, но как я могу определить FirefoxDriver с другим geckodriver. Процессы будут выполняться параллельно, поэтому глобальные настройки будут мешать друг другу.

Я знаю, что вы можете запустить несколько сеансов Firefox с одним и тем же драйвером, но мне нужно поддерживать разные версии Firefox, и поэтому я ищу для решения с несколькими гекодрайверами.

Спасибо за совет.

1 Ответ

1 голос
/ 04 февраля 2020

Свойства системы

Программа может использовать объекты Свойства системы , чтобы поддерживать свою конфигурацию на протяжении всего срока службы. Selenium s клиент сам использует объект Properties для поддержки своей собственной конфигурации. Класс System поддерживает объект Properties , который описывает конфигурацию текущей рабочей среды. Системные свойства включают информацию о текущем пользователе, текущей версии Java среды выполнения и символе, используемом для разделения компонентов пути к файлу.

Следовательно, вы не сможете использовать Несколько GeckoDriver версий в рамках одной программы.


Демонстрация

Демонстрация для извлечения некоторых из наиболее важных системных свойств:

  • Кодовый блок:

    package Java_Experiments;
    
    public class system_getProperty {
    
        public static void main(String[] args) {
    
            System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
            System.out.println(System.getProperty("webdriver.chrome.driver"));
            System.out.println(System.getProperty("subliminal.message", "Selenium WebDriver!"));
            System.out.println("Java Runtime Environment version: "+System.getProperty("java.version"));
            System.out.println("Java Runtime Environment vendor: "+System.getProperty("java.vendor"));
            System.out.println("Java vendor URL: "+System.getProperty("java.vendor.url"));
            System.out.println("Java installation directory: "+System.getProperty("java.home"));
        }
    }
    
  • Консольный выход:

    C:\Utility\BrowserDrivers\chromedriver.exe
    Selenium WebDriver!
    Java Runtime Environment version: 1.8.0_172
    Java Runtime Environment vendor: Oracle Corporation
    Java vendor URL: http://java.oracle.com/
    Java installation directory: C:\Program Files\Java\jdk1.8.0_172\jre
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...