0

ASP.NET MVC Web アプリケーションのコード化された UI テストを作成しています。Visual Studio 2012 を使用しています。

基本的に、以下のようなテスト方法がたくさんあります。

ここに画像の説明を入力してください

順序付きテスト ファイルを使用して、必要な順序で一度にすべてを実行します。

問題は、1 つのテストが失敗した場合、出力で ref/failed としてマークされ、テストを再度実行するとテストが機能することがよくあることです。注文したテストを実行するように設定できるようにしたいのですが、テスト メソッドが失敗した場合、そのテスト メソッドをもう一度自動的に実行しようとします

どうすればいいですか?if次のように、各テストメソッドの最後にステートメントを配置することを考えていました。

if(TestFailed) {
    RecallTest();
}

ある種のカウンターを使用しますが、コード化された UI テストで上記をどのように記述すればよいでしょうか?

4

2 に答える 2

1

再生エラー処理を使用してみてください。

 Playback.PlaybackError += Playback_PlaybackError;

このようにして、再生でエラーが発生するたびに呼び出されるイベント ハンドラーを登録できます。

イベント処理メソッドでは、エラーをスローしたアクションを繰り返すように再生に指示できます。

static void Playback_PlaybackError(object sender, PlaybackErrorEventArgs e)
{                              
    e.Result = PlaybackErrorOptions.Retry;
}

カウンタを追加して、エラーと再試行の無限ループを防ぐことができます。

于 2014-11-19T07:57:40.063 に答える