0

Robotium を使用してログイン シナリオをテストしようとしています。私の混乱は、次のようにテストするにはどうすればよいかということです。

ケース 1: Web サービスの呼び出し中に何らかのエラーが発生し、ダイアログがランダムに表示される場合、どうすれば対処できますか? このダイアログが表示されるかどうかはわかりません。

ケース 2: これが処理された場合、テストは不合格になりますか、それとも合格になりますか? ログインを成功させるには、ユーザーは次の画面に移動する必要があるためです。

4

1 に答える 1

2

このダイアログが発生するタイミングと場所がわかっているため、ダイアログを処理するコードを配置できます。例えば:

このようなコードがあるとしましょう

solo.clickOnView(view1);

solo.clickOnView(view2);

テストのこれら 2 つのステップの間にダイアログが表示されることがわかっている場合は、次のようなコードを配置できます。

if(solo.waitForView(dialogView, 1000, false)){
    solo.clickOnView(dialogDismissButton);
    solo.clickOnView(view2) //retry the step above
}

エラーが再び発生する可能性がある場合は、これらの呼び出しを関数に入れ、再帰的に/ループして、テストに失敗する前にこのサイクルを一定時間試行することは理にかなっています。

ケース2については、これはあなたの成功基準に依存します。理想的には、私があなただった場合、上記のエラーを引き起こす外部依存関係を削除しようとするので、エラーが発生することはありませんが、不安定であることに固執している場合. ユーザーはこれをエラーと見なしますか? 本番アプリが頻繁にログインに失敗する場合、アプリに何か問題があり、そのステップに失敗し、上記のポイントを実装しないと言うでしょうが、それは私の解釈です。ビジネスアナリスト/顧客/エンドユーザーに相談してくださいそして彼らの視点を得る。

于 2013-01-17T14:30:30.300 に答える