小编Mar*_*elo的帖子

如何在Android上更好地单元测试Looper和Handler代码?

我使用android.os.Handler类在后台执行任务.当单元测试这些时,我调用Looper.loop()让测试线程等待后台任务线程做它的事情.后来,我调用Looper.myLooper().quit()(也在测试线程中),允许测试线程退出loop并恢复测试逻辑.

在我想要编写多种测试方法之前,这一切都很好.

问题是Looper似乎不是为允许在同一个线程上退出和重新启动而设计的,所以我被迫在一个测试方法中完成所有测试.

我查看了Looper的源代码,但找不到解决方法.

有没有其他方法来测试我的Hander/Looper代码?或者可能还有一些测试友好的方式来编写我的后台任务类?

multithreading android unit-testing looper

13
推荐指数
1
解决办法
7055
查看次数

标签 统计

android ×1

looper ×1

multithreading ×1

unit-testing ×1