アプリケーションを BDD するために SpecFlow を使用しています。各反復で以前に割り当てられたパラメーターが繰り返される間に、テストを反復したいと思います。
このステップは約 120 回実行する必要があるため、同じテストを異なるパラメーターで書き直したくありません。
シナリオ部分のみのイテレーションは可能ですか?
実際のシナリオ:
ファイルを開いて閉じるアプリケーション機能があります。
アプリケーションが失敗するまでファイルを開いたり閉じたりしたいと思います。
私が作成した最後のテスト スイート (純粋な C# コードを使用) では、テスト対象のアプリケーションのメモリ リークが 10 回目の反復で失敗を引き起こしていることが判明しました。
このシナリオをテストするために仕様フローを使用したいと思います。
ログの理由から、各反復を異なるシナリオに分割したいと思います。フィーチャ ファイルに多くのサブ シナリオを含める代わりに、SpecFlow に昇順の繰り返しシーケンスで反復するように指示する方法はありますか?
シナリオ:
Scenario Outline: Open and close fileTestScenario1
Given Ready for input
When Open file <file_name>
Then File content is visible
Examples:
| file_name |
| param1 |
| param2 |
| param3 |
そこで、SpecFlow に次のテストを生成してもらいたいと思います。
- シナリオを param1 で呼び出す (param1 で呼び出してアサートする)
- param1 と param2 でシナリオを呼び出す (param1 で呼び出してアサートし、次に param2 で呼び出してアサートする)
- param1 と param2 と param3 でシナリオを呼び出す (param1 で呼び出してアサートし、param2 で呼び出してアサートし、param3 で呼び出してアサートする)
- ...
シナリオがアトミック テスト ユニットであることはわかっていますが、それでも、このタスクを実行したい場合、どうすれば実行できますか?