Grails 交易不';t使用自动刷新回滚IntregulationSpecs

Grails 交易不';t使用自动刷新回滚IntregulationSpecs,grails,spock,integration-testing,Grails,Spock,Integration Testing,我正在使用Grails。我所有的Spock集成测试都在运行 但当我将autoFlush属性设置为true时,一些测试开始失败,因为数据没有回滚 有什么想法吗 *我正在使用Grails2.1.1我的一个测试是扩展规范而不是IntegrationSpec。当我让它扩展IntegrationSpec时,所有数据在每次测试后都会回滚。可能是事务外刷新了某些内容,或者您使用的DDL在h2中不是完全事务性的。我使用自定义类来构建对象,即调用myService.buildTeams(),它创建并保存一组预定义

我正在使用Grails。我所有的Spock集成测试都在运行

但当我将autoFlush属性设置为true时,一些测试开始失败,因为数据没有回滚

有什么想法吗


*我正在使用Grails2.1.1

我的一个测试是扩展规范而不是IntegrationSpec。当我让它扩展IntegrationSpec时,所有数据在每次测试后都会回滚。

可能是事务外刷新了某些内容,或者您使用的DDL在h2中不是完全事务性的。我使用自定义类来构建对象,即调用myService.buildTeams(),它创建并保存一组预定义的团队。我应该定义transactional=false吗?只要方法调用在单元测试的事务中,就不应该是问题。我发现了问题。值得一提的是,我的一个测试类是从spock.lang.Specification扩展而来的,而不是从Integrationspec扩展而来的。有人也可能会遇到这种情况。