Установка Cucumber для Java в IntelliJ IDEA пошагово

Как установить cucumber for java в idea

Как установить cucumber for java в idea

Для работы с Cucumber в IntelliJ IDEA требуется версия IDE не ниже 2021.2 и JDK 11 или выше. Рекомендуется использовать последнюю стабильную сборку IntelliJ с поддержкой плагина Cucumber for Java, который обеспечивает распознавание .feature файлов и автогенерацию шагов тестов.

Перед установкой Cucumber убедитесь, что проект настроен с системой сборки Maven или Gradle. Для Maven нужно добавить зависимость io.cucumber:cucumber-java и io.cucumber:cucumber-junit в файл pom.xml, а для Gradle – соответствующие зависимости в build.gradle. Это обеспечит интеграцию Cucumber с JUnit и возможность запуска тестов прямо из IDE.

Следующий шаг – установка плагина Cucumber. В IntelliJ IDEA откройте Settings → Plugins → Marketplace, найдите Cucumber for Java и нажмите «Install». После установки рекомендуется перезапустить IDE, чтобы включить поддержку подсветки синтаксиса и автокомплит шагов.

После настройки зависимостей и плагина создайте структуру проекта с каталогами src/test/java и src/test/resources. В resources размещаются .feature файлы, а в java – классы шагов с аннотациями @Given, @When и @Then. Такой подход обеспечивает корректное сопоставление сценариев с реализацией шагов.

Проверка и настройка JDK в IntelliJ IDEA

Проверка и настройка JDK в IntelliJ IDEA

Перед началом работы с Cucumber необходимо убедиться, что в IntelliJ IDEA корректно установлен JDK. Для этого откройте File → Project Structure → Project и проверьте поле Project SDK. Если JDK отсутствует, нажмите New → JDK и укажите путь к установленной версии Java (рекомендуется JDK 17 или выше для совместимости с последними версиями Cucumber).

Для проверки текущей версии JDK используйте терминал IntelliJ IDEA: выполните команду java -version. Она должна вернуть версию, совпадающую с установленной в проекте. Несоответствие версий может вызвать ошибки компиляции и выполнения тестов.

Чтобы настроить JDK для модулей проекта, перейдите в File → Project Structure → Modules. В столбце Dependencies укажите Module SDK, совпадающий с Project SDK. Это обеспечит единообразие компиляции и исключит конфликты зависимостей.

Для удобства можно проверить системные переменные окружения:

Переменная Значение Назначение
JAVA_HOME Путь к установленному JDK Используется сборщиками проектов и плагинами для поиска JDK
PATH …;%JAVA_HOME%\bin Позволяет запускать Java из терминала

После настройки SDK рекомендуется выполнить Build → Rebuild Project, чтобы убедиться в корректности конфигурации. Ошибки компиляции на этом этапе часто указывают на неправильную версию JDK или несоответствие Module SDK.

Если планируется использование нескольких версий JDK, IntelliJ IDEA поддерживает их параллельное подключение через File → Project Structure → SDKs → + → JDK. Для каждого модуля можно выбрать нужную версию, что полезно при тестировании совместимости с разными версиями Java.

Создание нового Maven-проекта для Cucumber

Создание нового Maven-проекта для Cucumber

Откройте IntelliJ IDEA и выберите «File → New → Project». В списке типов проектов отметьте «Maven» и снимите галочку с опции «Create from archetype». Нажмите «Next».

Задайте GroupId, например, com.example, и ArtifactId, например, cucumber-test. Укажите версию проекта, оставив стандартную 1.0-SNAPSHOT, и нажмите «Next».

Выберите директорию для проекта и нажмите «Finish». IDEA создаст структуру Maven-проекта с папками src/main/java, src/test/java и файлом pom.xml.

Откройте pom.xml и добавьте зависимости для Cucumber. Минимальный набор включает:

<dependency>
  <groupId>io.cucumber</groupId>
  <artifactId>cucumber-java</artifactId>
  <version>8.15.0</version>
</dependency>

<dependency>
  <groupId>io.cucumber</groupId>
  <artifactId>cucumber-junit</artifactId>
  <version>8.15.0</version>
  <scope>test</scope>
</dependency>

Сохраните файл pom.xml и дождитесь автоматического обновления Maven. Проверьте, что в панели Maven слева появились все зависимости без ошибок.

Создайте пакеты под тесты и шаги: src/test/java/steps для классов шагов и src/test/resources/features для файлов сценариев Gherkin. Это обеспечит корректное распознавание Cucumber в IntelliJ IDEA.

Проект готов к созданию тестов. Следующий шаг – настройка Runner-класса и написание первых feature-файлов.

Добавление зависимостей Cucumber в pom.xml

Добавление зависимостей Cucumber в pom.xml

Для работы Cucumber с Java в Maven-проекте необходимо указать соответствующие зависимости в файле pom.xml. Минимальный набор включает ядро Cucumber, интеграцию с JUnit и поддержку формата Gherkin.

  1. Откройте pom.xml проекта в IntelliJ IDEA.
  2. Внутри тега <dependencies> добавьте следующие блоки:
  • Cucumber Java:

    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>8.14.0</version>
    </dependency>
  • Cucumber JUnit:

    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-junit</artifactId>
    <version>8.14.0</version>
    <scope>test</scope>
    </dependency>
  • Cucumber HTML Reports (опционально для отчетов):

    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-html</artifactId>
    <version>8.14.0</version>
    </dependency>

После добавления зависимостей выполните Reimport Maven Projects через панель Maven в IntelliJ IDEA для синхронизации проекта.

Рекомендуется фиксировать версии зависимостей, чтобы избежать несовместимости с различными версиями Java или других библиотек.

Настройка плагина Cucumber в IntelliJ IDEA

Настройка плагина Cucumber в IntelliJ IDEA

Откройте File → Settings → Plugins и в строке поиска введите Cucumber for Java. Выберите официальный плагин JetBrains и нажмите Install. После установки перезапустите IDE.

Перейдите в File → Project Structure → Modules, выберите модуль с тестами и убедитесь, что в Dependencies добавлены библиотеки Cucumber Java и Cucumber JUnit. При отсутствии добавьте через + → Library → From Maven артефакты io.cucumber:cucumber-java:8.14.0 и io.cucumber:cucumber-junit:8.14.0 или актуальные версии.

В Settings → Languages & Frameworks → Cucumber укажите путь к Java SDK проекта. Папка с step definitions должна быть помечена как Sources для корректного распознавания шагов.

Для создания feature-файла используйте New → File → имя.feature. Плагин автоматически включает подсветку синтаксиса Gherkin и автодополнение. Для генерации step definitions щелкните правой кнопкой на шаге и выберите Create Step Definition, укажите пакет и класс для сохранения методов.

Если автодополнение или подсветка не работают, выполните File → Invalidate Caches / Restart и убедитесь, что структура проекта соответствует стандарту Maven или Gradle, чтобы плагин корректно сканировал классы и feature-файлы.

Создание первой feature-файла и step definition

Создание первой feature-файла и step definition

В IntelliJ IDEA создайте новый каталог resources в папке src/test. Внутри создайте подпапку features для хранения feature-файлов. Щёлкните правой кнопкой на папке и выберите New → File, укажите имя файла с расширением .feature, например login.feature.

В файле login.feature опишите сценарий тестирования с использованием ключевых слов Cucumber: Feature, Scenario, Given, When, Then. Например:

Feature: Авторизация пользователя

Scenario: Успешный вход

Given пользователь находится на странице входа

When он вводит корректный логин и пароль

Then отображается главная страница

Создайте пакет stepdefinitions в src/test/java. Щёлкните правой кнопкой, выберите New → Java Class и дайте имя, например LoginSteps. Каждому шагу из feature-файла соответствует метод с аннотацией Cucumber: @Given, @When, @Then. Пример:

@Given(«пользователь находится на странице входа»)

public void openLoginPage() {

  // код для открытия страницы входа

}

@When(«он вводит корректный логин и пароль»)

public void enterCredentials() {

  // код ввода логина и пароля

}

@Then(«отображается главная страница»)

public void verifyMainPage() {

  // код проверки отображения главной страницы

}

После создания step definitions выполните синхронизацию проекта, чтобы IntelliJ IDEA распознала связи между feature-файлом и методами. Не используйте одинаковые тексты шагов для разных методов, чтобы избежать конфликтов при запуске тестов.

Запуск тестов Cucumber из IntelliJ IDEA

Запуск тестов Cucumber из IntelliJ IDEA

После настройки проекта с Cucumber и Maven убедитесь, что структура каталогов соответствует стандарту: src/test/java для классов с тестами и src/test/resources для feature-файлов.

Откройте класс с тестовым раннером, аннотированный @RunWith(Cucumber.class). В IntelliJ IDEA нажмите правой кнопкой на имя класса и выберите Run ‘ИмяКласса’. IDE автоматически сгенерирует конфигурацию запуска.

Для запуска конкретного сценария откройте соответствующий feature-файл. Рядом с каждой строкой сценария появляется зеленая стрелка. Щелкните на нее и выберите Run ‘ИмяСценария’. Это выполнит только выбранный сценарий, игнорируя остальные.

Если требуется многократный запуск тестов с разными параметрами, создайте новую конфигурацию: Run → Edit Configurations → + → Cucumber Java. Укажите путь к feature-файлу или пакету с тестами, выберите таргет Glue для step definitions и настройте VM options при необходимости.

Во время выполнения в консоли IntelliJ IDEA отображается пошаговый отчет: каждый шаг подсвечивается как passed, failed или skipped. Ошибки снабжены стек-трейсом, что облегчает локализацию проблемы.

Для повторного запуска используйте горячую клавишу Ctrl+Shift+F10 на классе раннера или feature-файле. IntelliJ кэширует предыдущие конфигурации, поэтому повторная настройка не требуется.

При интеграции с Maven можно запускать тесты через mvn test в терминале IntelliJ, но для отладки удобнее использовать встроенный запуск через IDE, чтобы сохранять возможность ставить breakpoints в step definitions.

Вопрос-ответ:

Какие плагины нужны для работы с Cucumber в IntelliJ IDEA?

Для работы с Cucumber в IntelliJ IDEA необходимо установить плагин «Cucumber for Java». Его можно найти через настройки IDE в разделе «Plugins». После установки и перезапуска IDE вы получите подсветку синтаксиса, автодополнение и возможность запускать тесты прямо из редактора.

Как создать новый проект Java с поддержкой Cucumber?

Создать проект можно через «File → New → Project», выбрав Java и Maven или Gradle как систему сборки. Затем добавьте зависимости Cucumber в файл pom.xml или build.gradle. После этого создайте стандартную структуру каталогов: src/test/java для классов шагов и src/test/resources для feature-файлов.

Где разместить feature-файлы в проекте?

Feature-файлы рекомендуется помещать в папку src/test/resources. Внутри можно создавать подпапки для разделения сценариев по функционалу. Это помогает поддерживать порядок и облегчает запуск тестов по пакетам.

Как связать шаги в Java с шагами в feature-файле?

Каждый шаг из feature-файла должен иметь соответствующий метод в классе шагов с аннотацией @Given, @When или @Then. Аннотация содержит регулярное выражение, совпадающее с текстом шага. IntelliJ IDEA позволяет автоматически создать stub метода при клике на нераспознанный шаг в feature-файле.

Какие ошибки могут возникнуть при запуске тестов Cucumber в IntelliJ IDEA?

Чаще всего возникают ошибки из-за неправильных зависимостей, неверной структуры каталогов или несоответствия аннотаций шагов и текста в feature-файлах. Также может быть ошибка «Glue code not found», если путь к классам шагов не указан в аннотации @CucumberOptions. Проверка pom.xml или build.gradle и структуры проекта помогает исправить эти проблемы.

Как правильно добавить Cucumber в проект Java в IntelliJ IDEA?

Для добавления Cucumber в проект Java сначала убедитесь, что у вас установлен Maven или Gradle. В случае Maven откройте файл pom.xml и добавьте зависимости для Cucumber, такие как cucumber-java и cucumber-junit. После этого обновите проект, чтобы IntelliJ IDEA подтянула нужные библиотеки. Для Gradle откройте файл build.gradle и добавьте соответствующие строки в секцию dependencies. После синхронизации проекта с Gradle нужные библиотеки также станут доступны. После установки зависимостей можно создать структуру пакетов для тестов и написать первый Feature-файл с сценариями, чтобы проверить работу Cucumber в среде.

Ссылка на основную публикацию