스프링 부트 테스트에서 p6spy로 작업하려고합니다. 내가 테스트 클래스 내 gradle.build이 (잘 실행) 응용 프로그램 자체에 관해서는이스프링 부트 테스트에로드되지 않은 지원 테스트 종속성
dependencies {
compile('org.springframework.boot:spring-boot-starter-data-jpa')
runtime('com.h2database:h2')
testCompile 'p6spy:p6spy:3.0.0'
testCompile('org.springframework.boot:spring-boot-starter-test')
}
과 같은
@RunWith(SpringRunner.class)
@SpringBootTest
로 주석 한 나는 새 데이터 소스를 추가 한 테스트 애플리케이션 - 문맥. 나는 내 테스트를 실행할 때
spring:
application:
name: persistence
datasource:
url: jdbc:p6spy:h2:mem:persistence;DB_CLOSE_ON_EXIT=FALSE
username: sa
password:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
jpa:
database: H2
는하지만 내 의존성이로드되지 않습니다처럼이 보이는 날이 오류
java.lang.IllegalStateException: Cannot load driver class: com.p6spy.engine.spy.P6SpyDriver
를 얻을. 처음에는 @DataJpaTest 주석을 사용하고 있었지만 이번에는 새로운 테스트 응용 프로그램 컨텍스트도 무시했습니다.
도움을 주시면 감사하겠습니다.
EDIT : IntelliJ를 사용하여 수동으로 p6spy 종속성을 테스트에 추가했습니다. 이제는 수업 경로가 잘못되었다고 확신하지만 Gradle에서 작동하도록 문제를 해결하는 방법을 모르겠습니다.
프로젝트를 https://github.com/p6spy/p6spy-it-spring-boot와 비교하십시오.이 샘플은 예상대로 작동합니다. –
@simas_ch 힌트를 보내 주셔서 감사합니다. 실제로이 도우미를 사용했지만 p6spy로 테스트를 사용하지 않습니다. (또는 아마도 나는 장님입니까?) – sorencito
런타임 대신 testCompile ('com.h2database : h2')을 사용하지 않는 이유는 무엇입니까? – Justas