@Rollback

@Rollback 指示事务性测试方法的事务在测试方法完成后是否应该回滚。如果为true,则回滚事务。否则,提交事务(另请参见@Commit)。即使没有显式声明@Rollback,Spring TestContext 框架中集成测试的回滚也默认为true

当声明为类级注解时,@Rollback 为测试类层次结构中所有测试方法定义默认的回滚语义。当声明为方法级注解时,@Rollback 为特定测试方法定义回滚语义,可能会覆盖类级@Rollback@Commit 语义。

以下示例导致测试方法的结果不会回滚(即,结果会提交到数据库)

  • Java

  • Kotlin

@Rollback(false) (1)
@Test
void testProcessWithoutRollback() {
	// ...
}
1 不要回滚结果。
@Rollback(false) (1)
@Test
fun testProcessWithoutRollback() {
	// ...
}
1 不要回滚结果。