【发布时间】:2020-09-24 19:27:05
【问题描述】:
我对我的 grails 3.3.11 集成测试有疑问。我认为,默认情况下,grails 不会将我的测试数据保存在数据库中。但是,我不知道为什么,我所做的所有测试都保存在数据库中。
有没有办法在执行完所有测试用例后回滚所有事务?
谢谢,
阿尔弗雷多
【问题讨论】:
标签: grails
我对我的 grails 3.3.11 集成测试有疑问。我认为,默认情况下,grails 不会将我的测试数据保存在数据库中。但是,我不知道为什么,我所做的所有测试都保存在数据库中。
有没有办法在执行完所有测试用例后回滚所有事务?
谢谢,
阿尔弗雷多
【问题讨论】:
标签: grails
使用@Rollback注解
https://docs.grails.org/latest/guide/testing.html#integrationTesting
Rollback 注释确保每个测试方法在回滚的事务中运行。通常这是可取的,因为您不希望根据订单或应用程序状态进行测试。
在 Grails 3.0 中,测试依赖 grails.gorm.transactions.Rollback 注解在集成测试中绑定会话。虽然每个测试方法事务都会回滚,但 setup() 方法使用一个单独的事务,不会回滚。
【讨论】: