스프링 부트:단위시험에서 액화효소로 시험데이터를 설정하는 방법
데이터베이스 스키마와 일부 테스트 데이터를 리퀴베이스로 설정하려고 합니다.각 테스트에는 스키마와 테스트용 특정 데이터를 설정하는 별도의 변경 로그가 있습니다.
테스트를 제대로 수행하기 위해서는 각 테스트 전에 스키마를 드롭하고 새로운 테스트 데이터로 채워야 합니다.그러나 이전 테스트 데이터를 사용할 수 있기 때문에 일부 테스트가 실패했기 때문에 이 방법은 작동하지 않는 것으로 보입니다.내 구성에 뭔가 문제가 있는 것 같아.각 테스트 전에 액화효소를 강제로 떨어뜨리려면 어떻게 해야 하나요?
테스트 내용은 다음과 같습니다.
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = MyTestConfig.class)
@TestPropertySource(properties = "liquibase.change-log=classpath:changelog/schema-with-testdata.xml")
public class MyRepositoryTest {
테스트의 설정은 다음과 같습니다.
@SpringApplicationConfiguration
@Configuration
@EnableAutoConfiguration
@ComponentScan("com.mypackage")
@EntityScan(basePackages = { "com.mypackage.domain" })
@EnableJpaRepositories(basePackages = { "com.mypackage.domain", "com.mypackage.infra.persistence" })
public class MyTestConfig {
src/main/test/resources 아래의 application.properties는 다음과 같습니다.
liquibase.drop-first=true
spring.jpa.hibernate.ddl-auto=none
이 있습니다.spring.liquibase.dropFirst
config 속성.이게 당신이 찾고 있는 건가요?
이것이 당신의 질문에 완전히 답할 수 있을지 모르겠습니다.다른 속성 likibase.default-schema="NameToCreate"가 있습니다.
하지만 그렇다고 처음부터 스키마를 만들 수는 없었습니다.
언급URL : https://stackoverflow.com/questions/35997898/spring-boot-how-to-setup-test-data-with-liquibase-in-unit-test
'programing' 카테고리의 다른 글
Chrome 업데이트로 인해 Ajax/Angular Network 렌더링 및 로드 속도가 느려졌습니다. (0) | 2023.03.15 |
---|---|
둘 중 하나 또는 둘 중 하나(다른 두 필드 중 하나)를 모두 필요로 하지 않는 방법은 무엇입니까? (0) | 2023.03.15 |
Android에서 HTTP Client를 사용하여 JSON에서 POST 요청을 보내는 방법은 무엇입니까? (0) | 2023.03.15 |
Elastic Search를 사용하여 여러 필드에서 검색 (0) | 2023.03.15 |
facebook과 같이 로드하는 동안 플레이스홀더를 작성하는 방법 (0) | 2023.03.15 |