Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
回滚spring@Transactional TEST中@Sql(executionPhase=BEFORE\u TEST\u METHOD)所做的更改_Spring_Spring Test_Transactional - Fatal编程技术网

回滚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")
})