如何为在onCreate
中启动异步任务的Android活动创建单元测试?我想测试这些任务的结果。
答案 0 :(得分:1)
很难为很多Android功能编写测试,因为你不能在Android之外实例化像Activity这样的类。
你可能最好做一个真正的单元测试...测试你独立关注的行为的函数。不要尝试在异步任务,活动等的上下文中测试它。
您可能需要稍微重构一下代码才能做到这一点,但是值得拥有可测试的代码!
答案 1 :(得分:0)
如谢丽尔的回答中提到的那样运行真正的单位测试将是理想的。但是,如果您仍然发现自己想要在活动测试中测试结果AsyncTasks或任何长时间运行的异步操作,那么Espresso就是银弹。
Espresso会自动等待AyscTasks完成,开发人员可以手动告诉Espresso等待通过IdlingResource API运行的自定义后台任务。
这是一个帮助您入门的教程:http://blog.sqisland.com/2015/04/espresso-custom-idling-resource.html
IdlingResource文档:http://developer.android.com/reference/android/support/test/espresso/IdlingResource.html