@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 不回滚结果。