【发布时间】:2020-01-10 21:15:41
【问题描述】:
我有以下浓缩咖啡代码:
@Test
fun backgroundWorkDisplaysTextAfterLoading() {
onView(withId(R.id.btn_next_fragment)).perform(click())
onView(withId(R.id.btn_background_work)).perform(click())
onView(withId(R.id.hiddenTextView)).check(matches(isDisplayed()))
}
点击btn_background_work时,有一个服务调用会在2秒内返回响应,然后hiddenTextview就会变得可见。
如何让 Espresso 等待执行 ViewAssertion ( check(matches(isDisplayed)) ),直到此服务调用返回一个值?服务调用通过 Retrofit 完成,服务调用在 Schedulers.io() 线程上完成。
我不能接触生产代码,所以在生产代码中实现 IdlingResources 是不可能的。
感谢任何帮助!
【问题讨论】:
标签: android testing android-espresso ui-testing