2017-10-09 11 views
0

Springブートテストでp6spyを使用しようとしています。Springブートテストでロードされていないテストの依存関係がありません

@RunWith(SpringRunner.class) 
@SpringBootTest 

で注釈されたテストクラスは私の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') 
} 

のように見える私は、私がテスト用途向けに新しいデータソースを追加しましたコンテキスト。私に

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で動作させるために修正する方法はわかりません。

+0

プロジェクトをhttps://github.com/p6spy/p6spy-it-spring-bootと比較してください。このサンプルは、期待どおりに動作します。 –

+0

@simas_chヒントをありがとう。私は実際にこのヘルパーを使用しましたが、p6spyでテストを使用しませんでしたか(または、おそらく私は盲目ですか?) – sorencito

+0

実行時の代わりにtestCompile( 'com.h2database:h2')を使用しないのはなぜですか? – Justas

答えて

0

問題は、IntelliJの私のバージョンにあります。私はバグレポートを提出します。

誰かがこの問題を抱えている場合は、プロジェクト設定で不足している依存関係を手動で追加しました。その後、IDEからも動作します。

関連する問題