Шаг JVM undefined огурца
Я не могу выполнить простой тест с огурцом для проекта. Я нахожусь в сообществе Intellij 13 с плагином огурца.
Я написал свой файл функций в моем каталоге функций, я также выполнил свои действия, создав их с помощью плагина. И мои шаги в файлах функций распознаются intellij, которые могут перемещаться и перейти к реализации шага.
Но когда я пытаюсь запустить мой сценарий, он всегда терпит неудачу, потому что для каждого шага он говорит "Undefined step:".
Вот как организован мой проект:
![file organization]()
И как я уже говорил, вы можете видеть, что мои шаги распознаются Intellij:
![feature file]()
Как это возможно, и как я могу это исправить?
Любая помощь будет замечательной!
РЕДАКТИРОВАТЬ
Теперь, когда я добавил параметры для своего бегуна:
@CucumberOptions( monochrome = true,
features = "src/test/resources/features/",
format = { "pretty","html: cucumber-html-reports",
"json: cucumber-html-reports/cucumber.json" },
dryRun = false,
glue = "fr.tlasnier.cucumber" )
Это работает!
Тем не менее, я заметил, что до этого у меня было два сценария. Один работал отлично, другой не смог найти определение шага!
Действительно странно, поскольку в обоих сценариях были некоторые шаги.
Ответы
Ответ 1
@RunWith(Cucumber.class)
@CucumberOptions( monochrome = true,
tags = "@tags",
features = "src/test/resources/features/",
format = { "pretty","html: cucumber-html-reports",
"json: cucumber-html-reports/cucumber.json" },
dryRun = false,
glue = "fr.tlasnier.cucumber" )
public class RunCucumber_Test {
//Run this
}
Ответ 2
Я столкнулся с той же проблемой. И обнаружил, что если пакет, в котором существуют определения шагов, не создан в соответствующей исходной папке.
Вы можете попытаться создать класс в файле fr.tlasnier.cucumber.step, тогда идея должна быть в состоянии найти шаги. Я думаю, что это ошибка в Idea.
Ответ 3
Класс, в котором определены этапы, должен быть общедоступным. Все остальное выкинет ошибку шага undefined.