如何对guice createinjector方法进行单元测试

时间:2019-06-21 07:00:20

标签: java unit-testing mocking mockito guice

我有以下主要方法调用,其中我使用静态createInjector方法初始化guice模块

public static void main(String[] args) {

    Injector injector = Guice.createInjector(Stage.PRODUCTION, new MyServiceModule());
    MyService component = injector.getInstance(MyService.class);
    component.doSomething();
}

除了使用power-mockito之外,代码下还有其他任何单元测试方法吗?人们会这样测试主要方法吗?

1 个答案:

答案 0 :(得分:3)

我不对这种代码进行单元测试,因为它比较麻烦,晦涩,几乎没有好处。如果您确实要测试此方法,只需从测试中调用静态main方法,您就需要弄清楚如何找出它是否按预期工作(可能有一个doSomething()方法与委托给component的main相同的类?)。

我确实在应用程序端到端测试中间接测试了这一点,当我启动应用程序并用一些测试戳戳它以确保所有内容很好地粘合在一起时。

请不要使用powermock。这是一个有用的工具,但不是那种随便使用的工具,而且绝对不能在 modern 项目中使用。