我不能更改项目代码,我只能编写测试。我有一个用于测试的函数:
fun funToBeTested() {
ClasWithWorkManager().veryVeryBadFunc(TAG)
// a lot of code to be tested below
...
}
与WorkManager:
class ClasWithWorkManager() {
companion object {
@JvmStatic
fun veryVeryBadFunc(tag: String) {
WorkManager.getInstance().cancelAllWorkByTag(tag)
WorkManager.getInstance().pruneWork()
}
}
}
这个函数的其余部分没有Android类引用。我可以用Unit测试所有funToBeTested(),除了它的第一行吗?现在我有明显的 *WorkManager未正确初始化 * 问题
1条答案
按热度按时间f0brbegy1#
您需要使用以下代码设置WorkManager测试初始化帮助程序,以防止出现“WorkManager未正确初始化。问题”:
您需要添加以下依赖项(KotlinDSL)用于工作管理器单元测试:
OR(Groovy based syntax)