使用异步任务测试Android活动

时间:2010-06-04 15:10:24

标签: android unit-testing android-asynctask

如何为在onCreate中启动异步任务的Android活动创建单元测试?我想测试这些任务的结果。

2 个答案:

答案 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