https://github.com/Spheniscine/dimsum-leadmanagement
我目前是Android开发的初学者。
这是我目前正在使用的Android应用,其描述中说明了其当前的工作状态。我目前正在尝试学习如何使用MVVM(模型-视图-视图模型)针对可测试的体系结构编写更健壮的代码,并且应该学习TDD(测试驱动的开发)模式,但是我似乎遇到了一个障碍编写实际的测试。
这里已经有许多仪器化的测试,用于测试最简单的导航内容,但是我很难找出编写测试的最佳方法,例如针对销售人员是否出现在列表中或添加销售人员的工作,而没有在电话上引用或影响实际的数据库。我也在努力为后端(SalespersonMngViewModel和DimsumRepository)编写单元测试
据我所知,我需要使用称为Dagger的东西根据需要注入模拟数据库或存储库...“ di”文件夹证明了这一点,我设法使用它使存储库可注入。我在弄清楚如何实际使用它进行测试时遇到了麻烦。另外,我在弄清楚如何扩展该模式以注入ViewModel时遇到了麻烦。从我所寻找的教程和信息中,似乎需要一个叫做ViewModelFactory的东西,同样,我也很难理解如何实现。
问题是,我发现的教程或者谈论了我还没有时间学习的一堆其他依赖项(例如Retrofit,RxJava,Glide),或者缺少了我的关键功能或用例需要(例如,我遵循的MVVM教程没有进行测试,然后有一个使用MVVM的测试教程,但是没有Room数据库或依赖项注入)