2017-01-17 8 views
0

私は配列が空であるかどうかをチェックし、配列が空でなければ配列を出力し、ステップを失敗する必要がある動作のステップ定義を書いています。これを行うには、次のコードをステップ定義で記述しました。例外で実行Behatを続行

if (!empty($issues)) { 
     print_r($issues); 
     throw new \Exception("Above issues were found for"); 
} 

現在、例外が表示されている場合、実行を停止し、将来のシナリオは実行されません。

+0

例外のスタックトレースを追加できますか?他のシナリオを実行しない唯一の方法は、PHPの致命的なエラーが発生した場合です。 – lauda

答えて

0

シナリオ全体からステップだけを実行することはできません。

シナリオのステップのいずれかが失敗した場合、シナリオは失敗し、シナリオの残りのステップは実行されません。これは、残りのステップで失敗した以前のアクションを続行する必要があるためです。

シナリオのロジックを再確認し、behat/bddのドキュメントを確認してください。

+0

ちょっと@lauda、私はシナリオ自体に失敗しました。シナリオが失敗すると、他のシナリオのスクリプトの実行を続行します。 –

0

Jeevan、Behatは、1つまたは複数のシナリオが機能ファイルで失敗した場合にスクリプトの実行を停止しません。たとえば、1つのフィーチャファイル "test.feature"に10のシナリオがある場合、フィーチャファイル全体をbehavior/test.featureとして実行するコマンドを実行すると、シナリオ2が失敗してもすべてのシナリオが連続して実行されます。
最後に、添付されたスクリーンショットの要約が表示されます。

Results summary

関連する問題