Selenide является самым популярным фреймворком для тестирования web-интерфейса, который обладает обширным инструментарием для разработки ваших тестовых сценариев.
В этой статье рассмотрим какие минимальные шали необходимо выполнить для начала разработки.
Шаг 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
Шаг 3 Выполнить поиск
Для взаимодействия с пользовательским интерфейсом в Selenide предусмотрен поиск DOM элементов страницы. Осуществляется оно с помощью локаторов, которых существует несколько видов (о них мы поговорим позже). В данной статье создадим локатор с помощью XPATH выражений (тема по данному локатору также довольно обширная и оставим ее для отдельной статьи).
XPATH для поиска строки ввода запроса будет выглядеть следующим образом:
.//textarea[@title='Поиск']
В данном выражении ищем все дочерние элементы корневого DOM элемента, которые отвечает условию атрибут title равен 'Поиск'. Если посмотреть на строку поиска 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
В итоге мы получим следующий результат
Заключение
В данной статье мы рассмотрели 3 шага для написания первого теста с помощью Selenide. В дальнейшем постараюсь написать о всех тонкостях и приемах написания тестов с помощью Selenide
Ссылка на проект: