我有espresso
的{{1}}测试:
Android
我需要使用 @Test
public void ExternalBankAccountDetailsFragment_InfoShown() throws InterruptedException {
// SETUP
mockRequest();
clickOnItem();
mActivityRule.getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Thread.sleep(100);
// CHECKS
onView(withId(R.id.view)).check(matches(hasDescendant(withText("test"))));
}
来等待Thread.sleep
的呼叫。但是我知道这不是一个好习惯。我熟悉async
,但无法使用它,因为我必须更改代码才能使用它(例如IdlingResources
中的CountingIdlingResource
使用情况)。
如何避免使用callback
()?
答案 0 :(得分:1)
最后,所有解决方案都将执行类似Thread.sleep
的操作。问题是:您怎么只能等待最短的时间?
闲置资源的一种替代方法是这个小型ConditionWatcher
库:https://github.com/AzimoLabs/ConditionWatcher
您可以创建一个Instruction
来等待检查当前活动是否可以找到视图示例