我有一个使用 MongoDB 的常规 Spring Boot 应用程序(1.3.2)MongoRepository
。
我想为我的一个从 MongoDB 获取数据的端点编写一个集成测试。据我从Spring Boot 1.3 Release Notes中看到的,Spring 具有Embedded MongoDB ( de.flapdoodle.embed.mongo
)的自动配置。但是,我无法从 Spring 和 Flapdoodle 文档中弄清楚如何编写一个集成测试,该测试将在我的文件系统上使用已安装的 MongoDB 版本。
到目前为止,我的集成测试如下所示:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(Application.class) // my application class
@WebAppConfiguration
public class IntegrationTest {
@Autowired
private MyRepository myRepository;
@Before
public void setup() {
myRepository.save(new MyEntity());
}
@Test
public void test() {
// here I will fire requests against the endpoint
}
}
我添加了两个具有test
范围的依赖项:spring-boot-starter-test
和de.flapdoodle.embed:de.flapdoodle.embed.mongo
. 因此,当我运行测试时,我可以看到 fladdoodle 尝试下载 MongoDB 版本,但由于我在代理后面而失败。但我不想下载任何版本,我希望它使用我本地安装的 MongoDB。是否有可能做到这一点?