Selenium - один из самых узнаваемых инструментов с открытым исходным кодом. Он обладает расширенным набором функций автоматизации тестирования веб-приложений, а благодаря универсальной архитектуре позволяет создавать скрипты на таких языках, как C#, Java, PHP, Ruby, Python или JavaScript.
Selenium: преимущества и недостатки
- Selenium — бесплатное кросс-платформенное и кросс-браузерное программное решение.
- Функциональность Selenium WebDriver можно легко расширить: библиотека легко интегрируется с другими фреймворками и инструментами тестирования.
- Selenium позволяет тестировать только веб-приложения.
- Для максимально эффективной работы в Selenium необходимо уметь программировать и писать скрипты на продвинутом уровне.
Основные компоненты Selenium включают:
-
Selenium IDE - Интегрированная среда разработки для создания скриптов тестирования визуальным способом без необходимости программирования. Его основное преимущество — возможность фиксировать и сохранять тесты для их дальнейшей обработки.
-
Selenium WebDriver - Позволяет управлять браузером и выполнить различные действия на веб-страницах, такие как: Ввод текста, нажатие кнопок, переход по ссылкам и многое другое.
-
Selenium Grid - Инструмент для распределенного тестирования, который позволяет запускать тесты параллельно на нескольких машинах и браузерах.
Инсталяция Selenium
Для работы с автотестами необходимо установить следующее ПО:
-
Java.
-
Intellij IDEA – среда разработки, будем использовать для Java тестов. (можно использовать другую при желании)
-
Selenium server и WebDriver браузера для запуска тестов локально у себя на компьютере.
JDK (Java Development Kit) - это пакет разработки Java, который включает в себя все необходимые инструменты и библиотеки для разработки, компиляции, отладки и выполнения Java-приложений.
-
Перейдите на официальный сайт Oracle JDK и загрузите установщик JDK для Windows.
-
Запустите скачанный установщик и следуйте инструкциям по установке, выбирая путь установки и другие опции на ваш выбор.
-
После завершения установки JDK, вы можете проверить версию JDK и наличие Java Development Kit на вашем компьютере, запустив команду
java -version
в командной строке. -
Если JDK установлен успешно, она отобразит версию вашей установленной JDK.
Опишем пример установки драйвера для браузера
Chrome
. Для установки откройте сайт
https://sites.google.com/a/chromium.org/chromedriver/ downloads
и скачайте ту версию ChromeDriver
, которая соответствует версии вашего браузера
Чтобы узнать версию браузера, откройте новое окно
в Chrome
, в поисковой строке наберите:
chrome://version/
и нажмите Enter
. В верхней строчке вы увидите информацию про версию браузера
Разархивируйте скачанный файл. Создайте на диске
C:
папку webdrivers
и положите разархивированный ранее файл chromedriver.exe
в папку C:\webdrivers
.
Добавьте в системную переменную PATH
папку
C:\webdrivers
IntelliJ IDEA - это интегрированная среда разработки (IDE) для различных языков программирования, разработанная компанией JetBrains. IntelliJ IDEA предоставляет разработчикам мощные инструменты для создания программного обеспечения, улучшения производительности и удобства в процессе разработки.
-
Перейдите на официальный сайт IntelliJ IDEA и загрузите установщик IDE для Windows.
-
Запустите скачанный установочный файл.
-
Следуйте инструкциям мастера установки, выбрав необходимые параметры (путь установки, язык интерфейса и прочее).
-
После завершения установки запустите IntelliJ IDEA, введите или активируйте лицензионный ключ (если у вас есть), создайте или импортируйте проект и начните работу.
-
Откройте файл
pom.xml
вашего проекта и добавьте зависимость Selenium Java в блок<dependencies>
:<dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.19.1</version> <!-- Укажите актуальную версию --> </dependency>
-
Сохраните файл
pom.xml
, чтобы Maven автоматически загрузил и добавил Selenium Java в проект.
- Скачайте актуальную Selenium Java-библиотеку с официального сайта Selenium и распакуйте в удобную вам папку.
- Откройте ваш проект в IntelliJ IDEA.
- Нажмите на
File
в верхнем меню IntelliJ IDEA, затем выберитеProject Structure
. - Открыть вкладку
Modules
а затем выбрать перейти в разделDependencies
. - Нажать на символ
+
, после чего выбрать опциюJARs or directories
. - Выбрать директорию, куда сохранили загруженную библиотеки Selenium и нажать
OK
.
- Скачайте актуальную версию Selenium Server с официального сайта Selenium.
- Поместите файлы
selenium-server-4.19.1.jar
иchromedriver.exe
в одну папку на вашем компьютере. - Создайте текстовый документ и откройте его для редактирования.
- Вставьте следующие команды в текстовый документ:
Для запуска Hub:
java -jar selenium-server-4.19.1.jar hub
Для запуска узла (Node) с использованием WebDriver:
java -jar selenium-server-4.19.1.jar node --selenium-manager true
- Сохраните текстовый документ с расширением
.bat
(например,start_selenium.bat
). - Поместите этот файл в ту же папку, где находятся
selenium-server-4.19.1.jar
иchromedriver.exe
. - Запустите файл
.bat
, чтобы запустить Selenium Server с Hub и Node.
Для создания простого теста с использованием Selenium и Java в IntelliJ IDEA, выполните следующие шаги:
-
Внутри вашего проекта IntelliJ IDEA создайте новый Java-класс для вашего теста.
-
Импортируйте необходимые классы Selenium в начале вашего класса:
java import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver;
-
В методе
main
вашего класса задайте путь кChromeDriver
и создайте новый экземплярWebDriver
:java System.setProperty("webdriver.chrome.driver", "C:\\webdrivers\\chromedriver.exe"); WebDriver driver = new ChromeDriver();
-
Укажите ссылку на веб-сайт, используя объект driver:
java driver.get("https://www.example.com");
-
Выполните действия на веб-странице с помощью команд Selenium, таких как поиск элементов, нажатие кнопок или ввод текста.
-
Закройте окно браузера по окончании вашего теста:
java driver.quit();
Следуя этим шагам, вы создали простой тестовый скрипт, используя Selenium и Java в IntelliJ IDEA. Вы можете запустить этот тест, чтобы автоматизировать действия на веб-сайте и проверить функциональность вашего веб-приложения.