0

ActivityInstrumentationTestCase2でアプリケーションをテストしようとしています。UI にいくつかのクリッカブルがあります。sendKeys(KeyEvent.KEYCODE_DPAD_DOWN); sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);UI でキーイベントをシミュレートするために etcを使用します。

問題は、テストケースが比較的速いのに対し、私のアプリはちょっと遅いことです。そのため、キーイベントが間違った UI 要素をクリック/ナビゲートすることがあり、テスト ケースが台無しになります。

わずかな遅延でキーイベントをシミュレートする他の方法はありますか? 今 のところThread.sleep(500)、マイナーな遅延を導入するために使用しています。

を使用する以外に、よりエレガントな方法はありThread.sleep()ますか?

注: 私はRobotiumについて認識しており、回答が Android Test Framework に関連していれば幸いです。ありがとう。

4

1 に答える 1

1

robotium には sleep メソッドがあるため、すべての Thread.sleep を次のように置き換えることができます。

solo.sleep(long ms);

UIAutomator が使用する別の方法もありますが、それが安全で UI のフリーズを引き起こさないかどうかはわかりません。

SystemClock.sleep(long ms);

ビューが表示されることが確実な場合は、待機メソッドを使用することもできます。robotium apiを見てみると、他に何が役立つかがわかります。

于 2013-08-26T18:21:37.187 に答える