使用Dagger2时创建测试依赖项

时间:2015-04-30 14:04:03

标签: android dagger dagger-2

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

  

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

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

1 个答案:

答案 0 :(得分:11)

目前无法使用Dagger 2(从v2.0.0开始),但没有一些解决方法。你可以阅读它here

我已提议one workaround,但这需要更改生产代码。

简而言之:

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

有关详细信息,请查看这两个链接。希望这个问题将在Dagger 2的未来版本中得到解决。