回滚spring@Transactional TEST中@Sql(executionPhase=BEFORE\u TEST\u METHOD)所做的更改
我有一个测试:回滚spring@Transactional TEST中@Sql(executionPhase=BEFORE\u TEST\u METHOD)所做的更改,spring,spring-test,transactional,Spring,Spring Test,Transactional,我有一个测试: @Transactional @RunWith(SpringJUnit4ClassRunner.class) ClassServiceTest 试验方法: @Sql(executionPhase = BEFORE_TEST_METHOD, scripts ="test.sql") public void methodTest() { } 据我所知,@Transactional with SpringJUnit4ClassRunner对回滚进行了所有测试sql/db更改。是否在
@Transactional
@RunWith(SpringJUnit4ClassRunner.class)
ClassServiceTest
试验方法:
@Sql(executionPhase = BEFORE_TEST_METHOD, scripts ="test.sql")
public void methodTest() {
}
据我所知,@Transactional with SpringJUnit4ClassRunner对回滚进行了所有测试sql/db更改。是否在方法回滚到之前执行@Sql脚本?您可以使用SqlGroup批注手动控制数据库更改:
@SqlGroup({
@Sql(executionPhase = BEFORE_TEST_METHOD, scripts = "/sql/insert_data.sql"),
@Sql(executionPhase = AFTER_TEST_METHOD, scripts = "/sql/drop_data.sql")
})