Найти тему

Java Selenide. Quick Start

Оглавление

Selenide является самым популярным фреймворком для тестирования web-интерфейса, который обладает обширным инструментарием для разработки ваших тестовых сценариев.

Логотип Selenide
Логотип Selenide

В этой статье рассмотрим какие минимальные шали необходимо выполнить для начала разработки.

Шаг 1. Зависимости

Для начала необходимо внедрить необходимые библиотеки в ваш java проект

<dependencies>
<!-- JUNIT -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.11.0-M1</version>
</dependency>
<!-- -->

<!-- SELENIDE -->
<dependency>
<groupId>com.codeborne</groupId>
<artifactId>selenide</artifactId>
<version>7.3.1</version>
</dependency>
<!-- -->
</dependencies>

Первая библиотека служит для написания непосредственно JUNIT тестов, а вот вторая как раз таки служит для внедрения Selenide.

ШАГ 2. Открытие страницы

В данном шаге откроем страницу поисковой системы Google.

Для открытия странице в Selenide предусмотрен метод:

Selenide.open(*relativeOrAbsoluteUrl*),

,где

relativeOrAbsoluteUrl - URL страницы

Используя данный метод, передаем в параметр "relativeOrAbsoluteUrl" ссылку на главную страницу Google:

Selenide.open("https://www.google.com/");

В итоге запуститься Google Chrome, так как стоит по умолчанию браузеров Selenide, и отобразит страницу Google

Главная страница Google, открытая с помощью Selenide
Главная страница Google, открытая с помощью Selenide

Шаг 3 Выполнить поиск

Для взаимодействия с пользовательским интерфейсом в Selenide предусмотрен поиск DOM элементов страницы. Осуществляется оно с помощью локаторов, которых существует несколько видов (о них мы поговорим позже). В данной статье создадим локатор с помощью XPATH выражений (тема по данному локатору также довольно обширная и оставим ее для отдельной статьи).

XPATH для поиска строки ввода запроса будет выглядеть следующим образом:

.//textarea[@title='Поиск']

В данном выражении ищем все дочерние элементы корневого DOM элемента, которые отвечает условию атрибут title равен 'Поиск'. Если посмотреть на строку поиска Google в дереве элементов страницы, то мы увидим:

Строка поиска Google в дереве элементов
Строка поиска Google в дереве элементов

В атрибуте "title" элемента видим наличие необходимого значения, следовательно, Selenide найдет его.

Для выполнения поиска элемента создадим следующую строчку кода:

SelenideElement search = Selenide.$x(".//textarea[@title='Поиск']");

Для дальнейших манипуляций с элементом страницы запишем его в переменную "search"

После того, как нашли необходимый нам элемент нужно ввести в него текст, к примеру "GitHub" и нажать кнопку "Enter" для запуска процесса поиска.

Для данных операций воспользуемся методом:

sendKeys(*CharSequence*)

, где

CharSequence - Строка(последовательность символов) или специальные кнопки

Для выполнения вышеуказанных действий создадим следующие строки кода:

search.sendKeys("Github");
search.sendKeys(Keys.ENTER);

Как видим значение "Github" передаем в метод как обычную строку, а вот кнопку "Enter" мы передаем через специальное перечисление Keys

В итоге мы получим следующий результат

Результат выполнения поиска с помощью Selenide
Результат выполнения поиска с помощью Selenide

Заключение

В данной статье мы рассмотрели 3 шага для написания первого теста с помощью Selenide. В дальнейшем постараюсь написать о всех тонкостях и приемах написания тестов с помощью Selenide

Ссылка на проект:

Github: https://github.com/vb010894/SelenideQuickStart