2016-07-07 8 views
1

フィーチャファイルに10のシナリオがあり、1つのシナリオが失敗した場合、次のシナリオを実行したり続行します。その特定の機能ファイルの実行を終了したい。どのように私はJavaでそれを行うことができますか?いずれかのシナリオが失敗した場合にキュウリの機能の実行を停止する方法

+0

なぜ好きなのですか?シナリオ間に依存関係はありますか? –

+0

はいそれは依存関係を持っています。 – Samantha

+1

理想的には、シナリオ間の依存関係はありません。したがって、あるシナリオが失敗した場合、どこを探しているか、どのシナリオが失敗しているかを知ることができます。また、最大の利点はテストを並行して実行できることです。 –

答えて

1

質問にはJavaでタグ付けされています。 私は以下の答えをテストしていません。そのわずかな仮定に基づいて..

まあ、我々は要件に基づいてコードを微調整する必要があります。.. - 私たちは、この要件を提供するためにキュウリで@Before@Afterを持っています。私があなただったら

、私はシナリオ失敗したか、またはされませんでした(もしあれば)私がチェックする、@Before

...このように行うだろう。失敗した場合は、現在のテストのスレッドを終了して結果を更新します。

@Afterでは、テストの実行後にシナリオのステータスを更新し、結果jsonを更新します。

したがって、すべての繰り返し(すべてのシナリオ)で、最初に@Beforeが呼び出されます。このロジックでは、現在のシナリオより前に実行されたシナリオが検索されます。

また、言うまでもなく、質問に追加されたコメントに同意します。すべてのシナリオは独立している必要があります。 (しかし、要件に関しては、微調整することができます))

Expert Tips実際、キュウリの品質とその使用法には価値が追加されています。お役に立てれば。

幸運を祈る!

+0

Cucumber-JVMにはBeforeScenario/AfterScenarioのフックがありません –

+0

@Sebありがとうございました。キュウリのパッケージcucumber.annotation.After/Beforeから '@ Before'と' @ After'にする必要があります – Praveen

0

"RunCukesTest"クラスで@BeforeClassと@AfterClassを試してみてください。

関連する問題