0
我在使用Espresso
进行测试时闲置资源时出现问题。IdlingResources不起作用Espresso Android
它不起作用。它只被调用两次,即使返回false
。
public class MyIdlingResource implements IdlingResource {
private boolean mIdle;
private ResourceCallback mResourceCallback;
public MyIdlingResource() {
this.mIdle = false;
this.mResourceCallback = null;
}
@Override
public final String getName() {
return MyIdlingResource .class.getSimpleName();
}
@Override
public final boolean isIdleNow() {
ArrayList<View> views = doStuff();
mIdle = views != null && !views.isEmpty();
if (mIdle) {
if (mResourceCallback != null) {
mResourceCallback.onTransitionToIdle();
}
}
return false;
}
@Override
public void registerIdleTransitionCallback(ResourceCallback resourceCallback) {
mResourceCallback = resourceCallback;
}
}
因此,在这种情况下,我回到false
所有的时间,但它也不管用。
出了什么问题?
你似乎被变异什么状态通常是只读的getter方法isIdleNow。我建议你在明确的递增/递减调用中管理空闲状态,就像Google的这个例子:https://android.googlesource.com/platform/frameworks/testing/+/android-support-test/espresso/contrib/src/主/ JAVA /安卓/支持/测试/咖啡/的contrib/CountingIdlingResource.java –