使用嵌入Spring数据的Mongo在Mongo db中导入java JSON文件
我正在尝试编写一些与从MongoDB中提取数据的方法相关的集成测试。具体来说,我使用的是Spring数据项目给出的Embedded Mongo。嵌入的mongo显然是由Flapdoodle提供的
我需要将一些json文件导入嵌入式Mongo。我已经看过了flapdoodle提供的测试,但我无法理解它们是如何与Spring Data+Spring Boot提供的magic集成的
有人能发布一些澄清的片段吗
你可以在下面搜索框中键入要查询的问题!
我正在尝试编写一些与从MongoDB中提取数据的方法相关的集成测试。具体来说,我使用的是Spring数据项目给出的Embedded Mongo。嵌入的mongo显然是由Flapdoodle提供的
我需要将一些json文件导入嵌入式Mongo。我已经看过了flapdoodle提供的测试,但我无法理解它们是如何与Spring Data+Spring Boot提供的magic集成的
有人能发布一些澄清的片段吗
# 1 楼答案
您可以创建一个抽象类,并具有启动mongod和mongoimport进程的设置逻辑
AbstractMongoDBTest。java
}
你的测试课。java
}
# 2 楼答案
您可以创建一个junit规则(ExternalResource),它在每个测试之前和之后运行。查看
MongoEmbeddedRule
类,了解实现细节集成测试:
外部资源规则:
json文件(names.json)带有MongoDB Extended JSON,其中每个文档都在一行中,集合名是不带扩展名的文件名
# 3 楼答案
你可以看看下面这个测试类,由“flapdoodle”提供。该测试显示了如何导入包含集合数据集的JSON文件: MongoImportExecutableTest.java
理论上,您也可以导入数据库的整个转储。(使用MongoDB还原): MongoRestoreExecutableTest.java