Можем ли мы добавить драйверы в селен, как Maven Депанданс
Можем ли мы добавить драйвер геккона, то есть драйвер или драйвер хрома, в качестве депанданта в POM? Я попытался выполнить поиск, но не смог их оштрафовать на https://mvnrepository.com/artifact. Любая причина, почему они не размещены в хранилище Maven?
1 ответ
Как отмечалось в нескольких комментариях, этот драйвер является исполняемым двоичным файлом. Maven не может помочь вам с этим, так как это просто хранилище зависимостей. В настоящее время, чтобы запустить селен, например, в Firefox, нам нужно написать:
System.setProperty("webdriver.gecko.driver", "driverpath/.exe");
WebDriver driver = new FirefoxDriver();
Однако у нас есть новое решение, которое поможет нам избавиться от первой строки кода, и вам больше не нужно загружать бинарные файлы Dirver. Он называется WebDriverManager и является зависимостью, которую можно добавить с помощью pom-файла Maven. Это вызовет водителя во время выполнения с номером последней версии. Все, что вам нужно написать сейчас:
WebDriverManager.firefoxdriver().setup();
WebDriver driver = new FirefoxDriver();
и вам нужно добавить эту зависимость в файл pom
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>2.2.1</version>
</dependency>
Для получения дополнительной информации об этом, пожалуйста, перейдите по ссылке Github, чтобы проверить все остальные драйверы, такие как Chrome, т. Е. И т. Д. WebDriverManagerLink
Просмотрите эту ссылку для получения дополнительных разъяснений// используйте под строкой, которую она решит для хрома
WebDriverManager.chromedriver().browserVersion("77.0.3865.40").setup();
WebDriver driver = new ChromeDriver();
driver.get("URL");
// также вам нужно добавить ниже зависимость в файл POM`
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>2.2.1</version>
</dependency>`