使用Dagger2时创建测试依赖项

Jul*_*rez 10 android dagger dagger-2

在阅读dagger 2的文档时,我无法找到一种简单的方法来在构建应用程序进行测试时提供依赖关系.我发现的唯一线索是:

Dagger 2不支持覆盖.覆盖简单测试假货的模块可以创建模块的子类来模拟该行为.应该分解使用覆盖并依赖依赖注入的模块,以便将被覆盖的模块表示为两个模块之间的选择.

我不明白我将如何在Android上设置这样的配置,任何人都可以解释一下?

tom*_*ozb 11

目前,Dagger 2(截至v.0.0.0)无法解决这个问题.你可以在这里阅读它.

我提出了一种解决方法,但这需要更改生产代码.

简而言之:

  • 提供额外的setter @Component(例如在Application类中的Android setter中)
  • 测试组件必须扩展生产组件

有关更多信息,请检查两个链接.希望这个问题将在Dagger 2的未来版本中得到解决.