@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 | 結果をロールバックしないでください。 |