java - 在启用 Spring Data Mongodb 审核的情况下运行测试

标签 java spring mongodb spring-data spring-data-mongodb

我试图找到在执行一些测试时拥有 spring-data-mongodb 的审计功能的方法。

我的测试基本上是启动一个嵌入式 mongo,并使用 MongoTemplate 连接我的数据库组件。

public class MyRepoImpl implements MyRepoCustom {
    @Autowired
    public MyRepoImpl(MongoOperations operations) {
        /* init stuff here */
    }
    @Override
    public MyModel runComplexQuery() { /* do stuff here, such as saving data */ }
}

当我执行测试时,我找不到一种方法来设置 MongoTemplate,以便在不加载整个 Spring 应用程序的情况下进行审核(至少对于某些特定测试)。

有没有办法设置 MongoTemplate/MongoOperations 以便运行审核功能?

最佳答案

使用 Spring Boot,您可以使用 @DataMongoTest 注解仅配置 MongoDB 启动器。

@RunWith(SpringRunner.class)
@DataMongoTest
@Import(ExtraMongoConfiguration.class) // if you need some @Configuration to be imported
public class SomeRepositoryTests {

    @Autowired
    private MongoTemplate mongoTemplate;

}

关于java - 在启用 Spring Data Mongodb 审核的情况下运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41842576/

相关文章:

java - 如何编写文本文件 Java

java - 构造函数是在 JAVA 中创建类对象的唯一方法吗?

java - 如何在 Java 中使用 jcifs 将文件从 smb 共享复制到本地驱动器?

java - 这里的beanInterface指的是什么?

mongodb - 关闭 mongos 进行升级

java - 如何在构造函数之外 Autowiring 服务?

Java Spring 应用运行 DynamoDBEmbedded 进行集成测试?

java - 在intellij中获取资源文件夹的位置

mongodb - 与Mongo Atlas的连接可使用家庭无线功能,但不能使用电话连接

javascript - 如何使用 Node.js Mongoose 删除文档?