В чем разница между артефактами Selenium Maven, селеном-api и поддержкой селена в репозитории Maven?
Я вижу следующие зависимости в репозитории Maven
selenium-java
selenium-api
selenium-support
selenium-server
selenium-Firefox-driver
и так далее.
Ссылка: https://mvnrepository.com/artifact/org.seleniumhq.selenium
Хотя я понимаю других, я не могу понять разницу между ними:
- Селен-апи
- Селен-поддержка
Когда мы должны их использовать?
1 ответ
Если вы используете Maven, вы найдете все артефакты Selenium Maven непосредственно в центральном репозитории Maven.
Чтобы начать использовать любую из реализаций в вашем проекте Maven, вам просто нужно добавить необходимую зависимость внутри вашего pom.xml
(текущая версия Selenium v3.141.59
):
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
На приведенной ниже диаграмме показаны зависимости между различными артефактами Selenium Maven, а также наиболее важными классами / интерфейсами в этих артефактах:
Если вы знаете, что будете использовать только определенную реализацию WebDriver, например, FirefoxDriver, вам не нужно зависеть от selenium-java
Артефакт (который имеет много транзитивных зависимостей). Вместо этого вы можете просто добавить firefox-driver
зависимость от артефакта, который вам нужен.
Селен-апи
Артефакт селена-API содержит следующее:
- Селен
- WebDriver
Селен-поддержка
артефакт поддержки селена содержит следующее: