首页 > 解决方案 > 在 Guice 中使用 JukitoRunner/Mockito 的构造函数参数模拟

问题描述

嗨,下面是我拥有的遗留 Java 代码,我必须向它添加新的测试用例。

@RunWith(JukitoRunner.class)
public class MyServiceTest {

    @Inject
    private MyService myService;


    public static class TestModule extends JukitoModule {

        @Override
        protected void configureTest() {
            install(new ArchaiusModule() {
                @Override
                protected void configureArchaius() {
                    MapConfig mapConfig = MapConfig.builder()
                                    .put("application.id", APP_ID).build();
                    bindApplicationConfigurationOverride().toInstance(mapConfig);
                }
            });
            bind(Config.class).to(TestConfig.class);
            install(new ABCModule());
        }

    }

MyService 实现 MyServiceImpl 具有以下构造函数

@Inject
public MyServiceImpl(Config config) {
    this.isEnabled = config.isEnabled();
}

我如何模拟配置。我正在尝试测试 isEnabled 应该为其中一个测试用例返回 false 。mockito 和 guice 的新手。我尝试了@Mock,但给了我null。

标签: javaguicejukito

解决方案


推荐阅读