@SqlMergeMode

@SqlMergeMode用于注解测试类或测试方法,以配置方法级别的@Sql声明是否与类级别的@Sql声明合并。如果在测试类或测试方法上未声明@SqlMergeMode,则默认使用OVERRIDE合并模式。使用OVERRIDE模式时,方法级别的@Sql声明将有效地覆盖类级别的@Sql声明。

请注意,方法级别的@SqlMergeMode声明会覆盖类级别的声明。

以下示例展示了如何在类级别使用@SqlMergeMode

  • Java

  • Kotlin

@SpringJUnitConfig(TestConfig.class)
@Sql("/test-schema.sql")
@SqlMergeMode(MERGE) (1)
class UserTests {

	@Test
	@Sql("/user-test-data-001.sql")
	void standardUserProfile() {
		// run code that relies on test data set 001
	}
}
1 @Sql合并模式设置为MERGE,适用于类中的所有测试方法。
@SpringJUnitConfig(TestConfig::class)
@Sql("/test-schema.sql")
@SqlMergeMode(MERGE) (1)
class UserTests {

	@Test
	@Sql("/user-test-data-001.sql")
	fun standardUserProfile() {
		// run code that relies on test data set 001
	}
}
1 @Sql合并模式设置为MERGE,适用于类中的所有测试方法。

以下示例展示了如何在方法级别使用@SqlMergeMode

  • Java

  • Kotlin

@SpringJUnitConfig(TestConfig.class)
@Sql("/test-schema.sql")
class UserTests {

	@Test
	@Sql("/user-test-data-001.sql")
	@SqlMergeMode(MERGE) (1)
	void standardUserProfile() {
		// run code that relies on test data set 001
	}
}
1 @Sql合并模式设置为MERGE,适用于特定测试方法。
@SpringJUnitConfig(TestConfig::class)
@Sql("/test-schema.sql")
class UserTests {

	@Test
	@Sql("/user-test-data-001.sql")
	@SqlMergeMode(MERGE) (1)
	fun standardUserProfile() {
		// run code that relies on test data set 001
	}
}
1 @Sql合并模式设置为MERGE,适用于特定测试方法。