如何在Hilt/Dagger应用程序中设置UI测试



我在一个项目中使用了Dagger,并研究了迁移到Hilt是否有意义。我目前的设置与(Hilt代码实验室(中的设置有些相似

即,我还有具有自定义作用域的UserComponent(从用户登录到用户注销(。这非常方便,因为我有很多存储库类缓存用户数据,而且只需删除UserComponent就可以很容易地清除所有数据。在我的情况下,迁移策略是让Hilt和Dagger并肩作战。

在Espresso测试中,我能够使用测试用例所需的useData初始化TestUserDataModule。这使得直接启动测试中的"活动"成为可能,并使应用程序表现得像用户已经登录一样。Hilt代码实验室或我迄今为止看到的任何其他文档都没有涵盖这一部分。

那么,在Hilt/Dagger共存的项目中,我应该如何设置UI测试呢?

参考本教程,它解释了如何使用dagger柄实现UI/Fraggment测试。Codelab没有提供这一点,因为当使用hilt时,Ui测试的逻辑不会改变,但方法确实改变了。在一个Stackoverflow答案中解释一切太多了,所以我希望视频能帮助你。

最新更新