多模块spring-boot jpa应用程序

时间:2015-11-02 15:02:05

标签: java spring unit-testing spring-boot

我在将单片应用程序重构为多模块结构时遇到了麻烦:

-\
 + core (jpa domain entities, services, ...)
 + command-line-utils
 + web-app

我已经移动了类并配置了pom文件,以便所有内容都能编译并且Web应用程序正确执行。

我无法理解如何进入核心模块我最初的基本junit测试:我不能停止有关丢失@Autowired存储库的错误。

据我所知,我可能应该在核心模块中定义某种配置类(?)(除了属性文件中的datasource参数之外,我没有任何关于原始moloc中持久性的特殊配置)

2 个答案:

答案 0 :(得分:0)

您可以在JUnit测试中定义配置。使用@RunWith(SpringJUnit4ClassRunner.class)包中的@ContextConfigurationorg.springframework.test.context注释。

在测试中,您可以根据需要使用Mocks和静态类中的实际类来定义配置,例如

    @Configuration
    public static class Config {

        @Bean
        public RestOperations restTemplate() {
            return mock(RestOperations.class);
        }

        ....
    }

答案 1 :(得分:0)

我已解决(此问题)在测试类中使用@SpringbootApplication引用的src/test/java中定义@SpringApplicationConfiguration(class = MyTestApp.class )带注释的类。

通过这种方式,通常的spring-boot magic :-)可以正常工作。