android - 模拟上下文上的 FilesDir 为空
问题描述
我是单元测试的新手,目前在我的 Kotlin android 应用程序中使用 Mockito。
我在我的视图模型类中使用 Koin 进行依赖注入。我已经成功地模拟了依赖项。我将 mockedContext 传递给我的 viewModel 类,但是在调用 mockedContext.filesDir 时它返回 null。
我错过了什么吗?
HomeViewModel类
init {
directoryManager.createDirectory()
}
目录管理器
class DirectoryManager(val context:Context){
fun createDirectory(){
val filePath: String = context.filesDir.absolutePath
}
}
主页查看模型测试
@Mock
private lateinit var mockedContext: Context
private lateinit var homeViewModel: HomeViewModel
@Before
fun setup() {
homeViewModel = HomeViewModel(mockedContext)
}
在 DirectoryManager 中为 context.filesDir 获取 null
解决方案
我的解决方案是改用 mockedApplication !
推荐阅读
- r - R中的ggplot地图-边界内的标题和边界内的更多空间
- node.js - Google Cloud Functions 构建失败:function.js 不存在;错误 ID:7485c5b6
- python - 如何使用应用函数来规范化熊猫列
- powershell - 使用 powershell 获取计算机最后一次登录
- python - 对多个多索引列数据框求和
- xamarin.forms - FileNotFoundException:无法加载文件或程序集 Syncfusion.sfpopupayout.XForms
- php - 在 WooCommerce 存档页面上显示产品名称和星级评分之间的自定义字段
- sql - 垂直加入按列分组
- ajax - 如何在 laravel 中配置角色管理中间件
- python-3.x - 安装numba时如何解决错误?