【发布时间】:2018-03-21 12:40:13
【问题描述】:
我有一个 Spring Boot 项目,版本 1.5.4,有一个 MongoDb 配置类:
@Configuration
public class MongoConfig {
@Value("${spring.data.mongo.client.uri:mongodb://localhost:27017/database}")
private String mongoURI;
@Bean
public MongoDbFactory mongoFactory() throws UnknownHostException{
return new SimpleMongoDbFactory(new MongoClientURI(mongoURI));
}
@Bean
public MongoTemplate mongoTemplate() throws UnknownHostException, MongoException{
return new MongoTemplate(mongoFactory());
}
}
在我的集成测试中,我想使用 Embedded Mongo (https://github.com/flapdoodle-oss/de.flapdoodle.embed.mongo)。
问题是MongoDb配置类在初始化Embedded mongo之前启动并尝试连接数据库,所以我的测试失败。如果我删除 MongoConfig 类,所有测试都运行良好。
我怎样才能只在我的测试执行中排除它?
【问题讨论】:
-
我知道这不是你的问题,但看看 testContainers:testcontainers.org 这是我用于测试的解决方案(主要是集成测试),这里有一个小教程:@ 987654323@
标签: java unit-testing spring-boot spring-data-mongodb spring-test