В чем причина добавления драйвера браузера в качестве зависимости maven? - PullRequest
2 голосов
/ 22 апреля 2019

Зачем включать

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
     <artifactId>selenium-chrome-driver</artifactId>
     <version>3.9.1</version>
</dependency>

в проект maven, если нам все еще нужно скачать бинарный файл драйвера? В чем преимущество? Что произойдет, если мы изменим версию в зависимости, но не загрузим новый двоичный файл?

1 Ответ

2 голосов
/ 22 апреля 2019

Селеновые Maven Артефакты можно найти в Central Maven Repository . Теперь, чтобы начать использовать любую из реализаций в вашем проекте Maven, вам просто нужно добавить требуемую зависимость в ваш pom.xml (текущий выпуск Selenium v3.141.59):

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.141.59</version>
</dependency>

На диаграмме ниже показаны зависимости между различными Селеновыми Maven Артефактами , а также наиболее важными классами / интерфейсами в этих артефактах:

Selenium_Maven_Dependencies

Если вы знаете, что будете использовать только определенную реализацию WebDriver , например, FirefoxDriver , вам не нужно зависеть от selenium-java артефакта (который имеет много транзитивных зависимостей). Вместо этого вы можете просто добавить зависимость selenium-chrome-driver от нужного вам артефакта.

...