ActivityInstrumentationTestCase2
Button.click()を実行するテストがあります。ボタンは、いくつかの作業を行うために他のアクティビティを開始する必要があります。Button.performClick()は正しく実行されていると思いますが、他のアクティビティが実行される前にテストが終了しています。
@UiThreadTest
public void test() {
Intent i = new Intent(this.myActivity, MyActivity.class);
myActivity.startActivity(i);
Button button = (Button) myActivity.findViewById(R.id.button);
button.performClick();
}
私はうまくいった以下を試しましたが、これは良い解決策というよりはむしろ回避策だと思います。
public void test() {
Intent i = new Intent(this.myActivity, MyActivity.class);
myActivity.startActivity(i);
Button button = (Button) myActivity.findViewById(R.id.button);
button.performClick();
try {
Thread.sleep(50000);
} catch (InterruptedException e) {
Log.e("MyTest", e.getMessage());
}
}
より良い方法はありませんか?