web-dev-qa-db-fra.com

Etape non définie de la JVM de concombre

Je ne peux pas exécuter un simple test avec concombre pour un projet. Je suis sur Intellij 13 Community, avec un plugin de concombre.

J'ai écrit mon fichier de fonctionnalité dans mon répertoire de fonctionnalités, j'ai également implémenté mes étapes, en les créant à l'aide du plugin. Et mes étapes dans les fichiers de fonctionnalités sont reconnues par intellij, qui peut naviguer et accéder à la mise en œuvre des étapes.

Mais lorsque j'essaie d'exécuter mon scénario, il échoue toujours car, pour chaque étape, il est indiqué "Etape non définie:".

Voici comment est organisé mon projet:

file organization

Et comme je l'ai déjà dit, vous pouvez voir que mes pas sont reconnus par Intellij:

feature file

Comment est-ce possible et comment puis-je corriger cela?

Toute aide est la bienvenue!

Maintenant que j'ai ajouté des options à mon coureur:

@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" )

Ça marche!

Pourtant, j'avais remarqué qu'avant cela, j'avais deux schémas de scénario. L'un fonctionnait parfaitement, l'autre ne parvenait pas à trouver la définition de l'étape!

Vraiment bizarre, car il y avait quelques étapes dans les deux scénarios.

11
Thibault
@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
}
7
Bala

La classe dans laquelle les étapes sont définies doit être publique. Tout le reste jetterait l'erreur d'étape non définie.

0
Vel Ganesh

J'ai rencontré le même problème. Et a constaté que si le paquet contenant les définitions d’étape n’avait pas été créé dans le dossier source correspondant. Vous pouvez essayer de créer une classe sous fr.tlasnier.cucumber.step, alors idée devrait pouvoir trouver les étapes. . Je pense que c'est un bug dans Idea.

0
david euler