【发布时间】:2020-10-20 14:57:05
【问题描述】:
我有一个应用程序类。
open class AppController : MultiDexApplication() {
companion object {
@JvmStatic
lateinit var instance: AppController
private set
}
override fun onCreate() {
super.onCreate()
instance = this
}
}
我使用我的代码进行扩展。 诠释.kt
fun Int.pxToDp(): Int {
return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, this.toFloat(), AppControllerMaster.instance.applicationContext.resources.displayMetrics).toInt()
}
我需要在单元测试中使用它。 使用时出现此错误
kotlin.UninitializedPropertyAccessException: lateinit property instance has not been initialized
我需要在我的单元测试中创建一个模拟或替代 AppController.class。
我需要在 UnitTest 中使用它,而不是在 androidTest 中。
如何在 UNITTEST 中进行 Application Crete 或 mock?
【问题讨论】:
标签: java android unit-testing kotlin mockito