web-dev-qa-db-ja.com

キュウリJVM未定義ステップ

プロジェクトのキュウリを使用した簡単なテストを実行できません。私はキュウリのプラグインでIntellij 13コミュニティにいます。

機能ファイルを機能ディレクトリに書き込み、プラグインを使用して手順を実装し、作成しました。そして、機能ファイルの私のステップは、ステップ実装にナビゲートして移動できるintellijによって認識されます。

しかし、シナリオを実行しようとすると、ステップごとに「未定義のステップ:」と表示されるため、常に失敗します。

これが私のプロジェクトの編成方法です:

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

できます!

しかし、その前に、2つのシナリオの概要があったことに気付きました。 1つは完全に機能し、もう1つはステップの定義を見つけることができませんでした。

両方のシナリオにいくつかの手順があったため、本当に奇妙です。

14
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
}
14
Bala

ステップが定義されているクラスはパブリックでなければなりません。それ以外の場合は、未定義のステップエラーがスローされます。

1
Vel Ganesh

同じ問題に遭遇しました。そして、ステップ定義が存在するパッケージが対応するソースフォルダに作成されていない場合が見つかりました。あなたはfr.tlasnier.cucumber.stepの下にクラスを作成することを試みることができます、そして、アイデアはステップを見つけることができるはずです。それはアイデアのバグだと思います。

0
david euler