활동이로드 될 때 waitForActivity가 완료되지만 아직보기에 액세스 할 수없는 경우 Robotium에 문제가 있습니다. 예 :Robotium에서 뷰를로드하기 위해 액티비티를 기다리는 방법은 무엇입니까?
solo.clickOnButton("Go");
assertTrue(solo.waitForActivity("ActivityTest", 5000));
Activity a = solo.getCurrentActivity(); // This works - a is "ActivityTest"
ArrayList<View> v = solo.getViews(); // This doesn't work - v is empty
문제는 활동이 완전히로드되지 않은 것으로 보입니다. 수면 지연은 문제를 해결 작동합니다
solo.clickOnButton("Go");
assertTrue(solo.waitForActivity("ActivityTest", 5000));
Activity a = solo.getCurrentActivity(); // This works - a is "ActivityTest"
solo.sleep(5000);
ArrayList<View> v = solo.getViews(); // This works - v has lots of views
가 Robotium과 삶의 단순한 사실인가, 아니면 내가이 잘못을하고있는 중이 야?
편집 : 이것은 내가 지금 solo.waitForActivity 대신에 사용하고 무엇을 :
public Boolean waitForActivity(String name) {
int timeout = 10 * 1000;
long start = Calendar.getInstance().getTimeInMillis();
assertTrue(solo.waitForActivity(name, timeout));
solo.assertCurrentActivity(name, name);
ArrayList<View> views = solo.getViews();
while (views.isEmpty()) {
solo.sleep(1000);
views = solo.getViews();
if (Calendar.getInstance().getTimeInMillis() > start + timeout)
return false;
}
return true;
}
감사합니다. 잘 알고 있습니다. – DevOfZot