我想测试使用View#postDelayed(Runnable, delay)
计划的块的执行情况。所以在断言之前我打电话给Robolectric.runUiThreadTasksIncludingDelayedTasks()
。但是测试代码卡住了,即没有返回。
如果我直接运行应用程序,我确信会调用延迟阻止。
这是runUiThreadTasksIncludingDelayedTasks()的错误还是有任何其他前提条件可以使用它?
THX, 米克
答案 0 :(得分:1)
使用Robolectric 3.8,您可以使用:
Robolectric.flushForegroundThreadScheduler()
这将执行已在前台调度程序上排队的所有可运行文件。
答案 1 :(得分:0)
适用于最新发布的Robolectric版本。