Файл .feature Cucumber не связывается с stepDefinition. java в Eclipse - PullRequest
0 голосов
/ 08 мая 2020

Я установил подключаемый модуль Natural 0.7.6 из eclipse marketplace, и у меня есть Windows 10. Версия Eclipse: Eclipse IDE для Java Версия для разработчиков: 2020-03 (4.15.0) Идентификатор сборки: 20200313-1211

Зависимости Maven, связанные с Cucumber:

    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>5.7.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>5.7.0</version>
        <scope>test</scope>
    </dependency>   
  </dependencies>

.feature file

файл определения шага

  [1]: [https://i.stack.imgur.com/e22x3.png][1]
  [2]: https://i.stack.imgur.com/cAfLY.png

Файл .feature жалуется на "Не найдено определения для". CTRL + CLICK на шаге файла .feature не ведет к файлу stepDefinition (скриншоты прилагаются). Мне не хватает плагина? Есть ли проблемы совместимости с версией Eclipse IDE и подключаемым модулем Cucumber, который я использую? Я ценю вашу помощь, ребята.

Ответы [ 2 ]

1 голос
/ 10 мая 2020

У меня была такая же проблема, что CTRL + Click не работал в файлах функций, когда я устанавливал плагин Natural в Eclipse IDE. Позже я удалил плагин Natural и установил плагин «Cucumber Eclipse», и теперь я могу выполнить ctrl + щелчок по имени шага файла функции, чтобы перейти к файлу определения шага.

Вы можете выполнить следующие шаги:

  1. Удалить плагин Natural

  2. Установить плагин Cucumber Eclipse

Примечание: ниже мой Eclipse сведения о версии. Плагин "Cucumber Eclipse" может быть недоступен для последней версии Eclipse

Версия: 2019-06 (4.12.0) Идентификатор сборки: 20190614-1200

0 голосов
/ 09 мая 2020

Сначала вам нужен файл бегуна огурца, а внутри него нужно склеить файл определения шага с функцией огурца. Дело в том, что в огурце, если вы поместите файл функции, файл определения шага и файл бегуна в один и тот же пакет, тогда автоматически он сможет сопоставить шаги из файла определения шага с файлом функции. Но, судя по скриншотам, я вижу, что определение функции и шага присутствует в разных пакетах. Создайте файл runner, как показано ниже

>

import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(
 features = "<Directory path containing features>" 
 ,glue={"<Step definition package name>"}
 )    //  example: Features: src/test/resources/features, Glue: com.package.name.stepdefs

public class TestRunner {

}

TestRunner. java

...