|
| 1 | +Selenium |
| 2 | +JUnit |
| 3 | +ChromeDriver, но для автоматизации Webdrivermanager |
| 4 | +Typesafe для чтения конфигурационных файлов - для набора данных. |
| 5 | + |
| 6 | +Нужен интерфейс для чтения файла. |
| 7 | + |
| 8 | +Скачать: |
| 9 | +https://www.jetbrains.com/idea/download/?section=windows |
| 10 | +![[IDE.png]] |
| 11 | +Отсюда будет брать зависимости для остальных библиотек: |
| 12 | +https://www.selenium.dev/documentation/webdriver/getting_started/install_library/ |
| 13 | + |
| 14 | +Создание проекта: Выберем Maven. |
| 15 | +![[Maven.png]] |
| 16 | +Далее нужен файл pom.xml. |
| 17 | +Создадим в нем блок зависимостей |
| 18 | +```java |
| 19 | +<dependencies> </dependencies> |
| 20 | +``` |
| 21 | +Теперь добавим зависимость Selenium с указанием версии. |
| 22 | +```java |
| 23 | +<dependency> |
| 24 | + <groupId>org.seleniumhq.selenium</groupId> |
| 25 | + <artifactId>selenium-java</artifactId> |
| 26 | + <version>4.28.1</version> |
| 27 | +</dependency> |
| 28 | +``` |
| 29 | +Теперь добавим зависимость junit-jupiter c указанием версии. |
| 30 | +```java |
| 31 | +<dependency> |
| 32 | + <groupId>org.junit.jupiter</groupId> |
| 33 | + <artifactId>junit-jupiter-engine</artifactId> |
| 34 | + <version>5.8.2</version> |
| 35 | + <scope>test</scope> |
| 36 | +</dependency> |
| 37 | +``` |
| 38 | +Теперь добавим зависимость от Junit |
| 39 | +```java |
| 40 | +<dependency> |
| 41 | + <groupId>junit</groupId> |
| 42 | + <artifactId>junit</artifactId> |
| 43 | + <version>4.13.2</version> |
| 44 | + <scope>test</scope> |
| 45 | +</dependency> |
| 46 | +``` |
| 47 | +Теперь добавим зависимость от [WebDriverManager](https://github.com/bonigarcia/webdrivermanager) |
| 48 | +```java |
| 49 | + <dependency> |
| 50 | + <groupId>io.github.bonigarcia</groupId> |
| 51 | + <artifactId>webdrivermanager</artifactId> |
| 52 | + <version>4.4.3</version> |
| 53 | + </dependency> |
| 54 | +``` |
| 55 | +Будем также использовать библиотеку TypeSafe для того чтобы читать конфигурационные файлы. |
| 56 | +```java |
| 57 | + <dependency> |
| 58 | + <groupId>com.typesafe</groupId> |
| 59 | + <artifactId>config</artifactId> |
| 60 | + <version>1.4.1</version> |
| 61 | + </dependency> |
| 62 | +``` |
| 63 | + |
| 64 | +# Первый автотест |
| 65 | +Далее будет описан базовый набор необходимых действий для создания первого небольшого теста, осуществляющего просмотр интернет-страницы и выполнение на ней определенного действия. |
| 66 | +## Структура проекта |
| 67 | +Будем использовать фреймворк Maven. Поэтому предлагается следующая структура проекта: |
| 68 | +- src |
| 69 | + - test |
| 70 | + - java |
| 71 | + - core - здесь указываются базовые абстрактные классы для теста и для страницы которую будем просматривать |
| 72 | + - search - здесь наследники базовых классов теста и страницы. В классе страницы осуществляем поиск элементов, которые необходимо протестировать. Осуществляем их инициализацию. Также здесь указывается метод, который будет осуществлять некоторый набор тестовых действий. В классе теста - осуществляем создание объекта страницы и вызов метода тестовых действий. |
| 73 | + - readconfiguration - здесь реализовать метод осуществляющий чтение файла конфигурации, который хранит набор необходимых значений для тестирования. Например URL страницы к которой необходимо подключится. |
| 74 | + - resources - здесь хранится файл конфигурации. |
| 75 | +## Создание пакет |
| 76 | +Пакет создается путем вызова контекстного меню и выбора соответствующего объекта структуры. |
| 77 | +![[Новый пакет.png]] |
| 78 | +Можно также создавать и директории (New-Directory), но в этом случае рекомендуется отметить (Mark Directory As) эту папку: |
| 79 | +![[MarkDirectory As.png]] |
| 80 | + |
| 81 | + |
| 82 | +# Справочный раздел |
| 83 | +## Уроки |
| 84 | +🔖[Конфигурационный файл](https://www.youtube.com/watch?v=D0aE_fRT0DE) |
| 85 | +🔖[Про XPath](https://www.youtube.com/watch?v=EVGH_XxAbXQ) |
| 86 | +🔖[Пишем Автотест с использованием Selenium WebDriver](https://habr.com/ru/articles/502292/) |
| 87 | +## Документация |
| 88 | +🔖[Документация по WebDriverManager](https://bonigarcia.dev/webdrivermanager/#webdrivermanager-and-selenium-manager) |
| 89 | +## Репозитории |
| 90 | +🔖[Репозиторий Selenium ](https://github.com/SeleniumHQ) |
| 91 | +## Сайты |
| 92 | +🔖[Selenium](https://www.selenium.dev/downloads/) |
| 93 | + |
| 94 | + |
0 commit comments