您知道如何使用Robolectric实现AsyncTasks的单元测试吗?任何指针将不胜感激。使用robolectric测试异步任务
20
A
回答
15
拨打execute(...)
上的任务,然后等待结果调用Robolectric.runBackgroundTasks()
/Robolectric.flushBackgroundThreadScheduler()
然后你可以断言。
@Test
public void test() {
//create task
MyAsyncTask asyncTask = new MyAsyncTask();
//start task
asyncTask.execute(...);
//wait for task code
// Robolectric.runBackgroundTasks(); (pre 3.0)
Robolectric.flushBackgroundThreadScheduler(); //from 3.0
//can run asserts on result now
assert...(asyncTask.get());
}
7
随着Robolectric 2.4,这是现在ShadowApplication
:
ShadowApplication.runBackgroundTasks();
相关问题
- 1. c#moq测试异步任务
- 2. 与异步测试方法的任务
- 3. 测试异步任务和Junit
- 4. c#测试异步任务 - 测试用例忽略等待 - NullReferenceException
- 5. Robolectric:使用ormlite测试
- 6. 使用Robolectric的ContentProvider测试
- 7. 使用Robolectric测试ActiveAndroid
- 8. 使用Robolectric测试Android库
- 9. 使用异步任务取消任务
- 10. 异步任务从api的异步任务不运行异步
- 11. 异步任务
- 12. 异步任务
- 13. 异步任务vs任务
- 14. 将异步任务与阻塞同步任务混合使用
- 15. Robolectric测试菜单
- 16. Robolectric和Dagger测试
- 17. 使用Robolectric的片段测试活动
- 18. 使用Robolectric测试okHttp请求 - 回调
- 19. 在Robolectric测试中使用Android KeyStore
- 20. 如何使用Robolectric测试AsyncTask?
- 21. 使用Robolectric和ANT进行测试
- 22. Robolectric单元测试使用AndroidAnnotations
- 23. 尝试/抓住异步任务
- 24. 试图写在异步任务
- 25. 调用异步任务
- 26. android异步任务
- 27. 块异步任务
- 28. 异步任务,BufferedReader
- 29. SignalR异步任务
- 30. 测试异步注射服务
谢谢!这是解决方案... – StefMa 2015-02-24 17:07:37
@bianca可以接受这个答案吗? – weston 2017-03-01 20:16:27