문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 다음 판 양쪽 다음 판 | ||
springframework:spring_test_dbunit [2015/10/30 10:15] kwon37xi |
springframework:spring_test_dbunit [2018/09/28 10:49] kwon37xi [MS SQLServer] |
||
---|---|---|---|
줄 3: | 줄 3: | ||
* [[java: | * [[java: | ||
+ | ===== MySQL Multiple Schema 지원 기본 설정 ===== | ||
+ | <code java> | ||
+ | @Bean | ||
+ | public DatabaseConfigBean dbUnitDatabaseConfig() { | ||
+ | DatabaseConfigBean config = new DatabaseConfigBean(); | ||
+ | config.setQualifiedTableNames(true); | ||
+ | config.setMetadataHandler(new MySqlMetadataHandler()); | ||
+ | config.setDatatypeFactory(new MySqlDataTypeFactory()); | ||
+ | return config; | ||
+ | } | ||
+ | @Bean | ||
+ | public DatabaseDataSourceConnectionFactoryBean dbUnitDatabaseConnection(DataSource dataSource) { | ||
+ | final DatabaseDataSourceConnectionFactoryBean dbUnitDatabaseConnection = | ||
+ | new DatabaseDataSourceConnectionFactoryBean(); | ||
+ | dbUnitDatabaseConnection.setDataSource(dataSource); | ||
+ | dbUnitDatabaseConnection.setDatabaseConfig(dbUnitDatabaseConfig()) | ||
+ | return dbUnitDatabaseConnection; | ||
+ | } | ||
+ | </ | ||
+ | <code java> | ||
+ | // 실제 테스트에서는 | ||
+ | // Spring Application 기본 설정... 이후 | ||
+ | @TestExecutionListeners({DependencyInjectionTestExecutionListener.class, | ||
+ | DirtiesContextTestExecutionListener.class, | ||
+ | TransactionalTestExecutionListener.class, | ||
+ | DbUnitTestExecutionListener.class}) | ||
+ | @DatabaseSetups({ | ||
+ | @DatabaseSetup(value = " | ||
+ | @DatabaseSetup(value = " | ||
+ | }) | ||
+ | @DbUnitConfiguration(databaseConnection = " | ||
+ | public class DatabaseTest { | ||
+ | ... | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | |||
+ | FlatXML 에서는 '' | ||
+ | <code xml> | ||
+ | <?xml version=" | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== MS SQLServer ===== | ||
+ | * multiple catalog 지원이 제대로 안됨. | ||
+ | * test context 에 대해서는 '' | ||
+ | * 다중 설정< | ||
+ | @DatabaseSetups({ | ||
+ | @DatabaseSetup(value = " | ||
+ | @DatabaseSetup(connection=" | ||
+ | }) | ||
+ | </ | ||
+ | * Insert Operation의 경우 '' | ||
+ | @DbUnitConfiguration(databaseConnection = [" | ||
+ | class MyRepositoryTest extends Specification { | ||
+ | ... | ||
+ | } | ||
+ | </ |