如果没有多个模块,十分简单,加两个注解就好了:
@RunWith(SpringRunner.class) @SpringBootTest
但在多模块下这么做会报找不到Spring上下文的错误。
查了各种资料,但还没找到可行的办法。网上流传的有一定可行性的方法,是每个模块都各自写一个测试配置类。
但在测试的功能需要使用其余模块的配置(properties文件和Configuration类)时,依然会报错。
比如说common模块的配置类和配置文件,有数据库连接等信息;而user模块的功能测试需要用到。跑程序时没问题,但单元测试时该如何获取其余模块的配置?
<p>问题解决了。各依赖模块都放一个测试用的Application类即可。</p>
测试类配置:
@RunWith(SpringRunner.class) //@ContextConfiguration(classes = {TestConfiguration.class}) @ActiveProfiles(profiles = {"dev"}) @SpringBootTest(classes=TestApplication.class) public class RedisTest {
测试Application配置:
@Configuration @ComponentScan("com.XXX.tpl") @EnableJpaRepositories(basePackages="com.XXX.tpl") @EntityScan("com.XXX.tpl") @SpringBootApplication public class TestApplication
之前一直报错,是因为我的其余配置有误,产生了配置冲突……
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。