Ошибка при запуске файла компонента в новом каталоге - PullRequest
0 голосов
/ 30 апреля 2020

Мой файл работал нормально, когда он был java в следующей структуре src \ test \ java \ login.feature. При создании папки с именем объекта, находящейся в следующей структуре src / test / java / feature / Login.feature, она не выполняется.

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

@RunWith(Cucumber.class)
@CucumberOptions(features = {"src/test/java/feature"},
plugin = {"json:target/cucumber.jason"},
glue = "src/test/java")

public class Runner {

}

enter image description here

Ответы [ 2 ]

0 голосов
/ 30 апреля 2020

Вы используете довольно старую версию Cucumber. Сканирование пути менее чем идеально.

Помимо обновления рекомендуется использовать стандартную компоновку maven для вашего проекта. Это означает, что файлы объектов - это ресурсы, которые должны быть размещены в каталоге ресурсов. Например:

|- src/main/java/com/example
| |- App.java
|- src/test/java/com/example
| |- StepDefinitions.java
| |- RunCucumberTest.java
|- src/test/resource/com/example/
| |- single.feature
| |- rule.feature
| |- outline.feature

Это позволяет вам использовать URI пути к классу для функций и имен пакетов для клея.

@CucumberOptions(
  features = {"classpath:com/example"},
  glue = "com.example"
)

И при использовании этого макета в более поздних версиях Cucumber вы можете также опустите features и glue из CucumberOptions, потому что Cucumber будет искать в пакете класса RunCucumberTest клей и функции по умолчанию.

0 голосов
/ 30 апреля 2020

Попробуйте изменить нижнюю строку

@CucumberOptions(features = {"src/test/java/feature"},

на показанную ниже

@CucumberOptions(features = "src/test/java/feature/",
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...