首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring Boot MongoRepository @Rollback用于测试

Spring Boot MongoRepository @Rollback用于测试
EN

Stack Overflow用户
提问于 2016-07-13 22:14:58
回答 0查看 3.3K关注 0票数 1

我在Spring Boot中为MongoRepository编写了一个测试,测试运行良好。唯一的问题是,当测试结束时,我想要回滚,这样测试就不会引起数据库中的更改。

代码语言:javascript
复制
// package...

// imports...

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = MetistrafficApplication.class)
@Rollback(true)
public class AppRepositoryTests {

    @Autowired
    private AppRepository appRepository;

    @Test
    public void insertTest() {
        App app = new App("test");
        App appInserted = appRepository.save(app);

        assertThat(appInserted.getName(), equalTo(app.getName()));
    }
}

我把@Transactional放在@Rollback之前,但得到了这个错误:

代码语言:javascript
复制
java.lang.illegalstateexception:Failed to retrieve PlatformTransactionManager for @Transactional test for test context

当我搜索这个错误时,我找不到使用MongoRepository的任何代码。那么,我该如何解决这个问题呢?

编辑:添加@Transactional("PlatformTransactionManager")后,我得到的错误更改为:

代码语言:javascript
复制
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'PlatformTransactionManager' is defined: No matching PlatformTransactionManager bean found for qualifier 'PlatformTransactionManager' - neither qualifier match nor bean name match!
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38354181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档