Espressotesting错误:AppNotIdleException

我closures了开发人员选项上的所有animation。 但是,当我尝试点击其中一个button时,我仍然得到这个exception。

我的应用程序确实是活跃的,并没有完全闲置,但我无法改变它。

android.support.test.espresso.AppNotIdleException: Looped for 6930 iterations over 60 SECONDS. The following Idle Conditions failed . at dalvik.system.VMStack.getThreadStackTrace(Native Method) at java.lang.Thread.getStackTrace(Thread.java:580) at android.support.test.espresso.base.DefaultFailureHandler.getUserFriendlyError(DefaultFailureHandler.java:92) at android.support.test.espresso.base.DefaultFailureHandler.handle(DefaultFailureHandler.java:56) at android.support.test.espresso.ViewInteraction.runSynchronouslyOnUiThread(ViewInteraction.java:184) at android.support.test.espresso.ViewInteraction.doPerform(ViewInteraction.java:115) at android.support.test.espresso.ViewInteraction.perform(ViewInteraction.java:87) 

Solutions Collecting From Web of "Espressotesting错误:AppNotIdleException"

过去几天我一直在努力解决这个问题。
以下是我用来识别“违规者”的方法:

 private void dumpThreads() { int activeCount = Thread.activeCount(); Thread[] threads = new Thread[activeCount]; Thread.enumerate(threads); for (Thread thread : threads) { System.err.println(thread.getName() + ": " + thread.getState()); for (StackTraceElement stackTraceElement : thread.getStackTrace()) { System.err.println("\t" + stackTraceElement); } } } 

就我而言,Facebook SDK使用AsyncTask线程池。

根据MaciejGórski对类似问题的回答:

这是我的应用程序代码中的一个错误, SwipeRefreshLayout在这里无限期地animation。 由于这个组件中的一个错误 ,刷新状态甚至没有显示。