[Java][Spring Boot][JPA] テスト時にSQLをログ出力する ー NetBeansで始めるSpring Boot(8)
hibernateのログレベルを変更する設定ファイルを作成します。
src/test/resources/application.yml
logging:
level:
org:
hibernate:
SQL: DEBUG
type:
descriptor:
sql:
BasicBinder: TRACE
テストを実行すれば、その他のログと一緒にSQLが出力されます。
2016/11/17追記
設定ファイルを作成しなくても、テストクラスのアノテーションを変更するだけでいけました。
このようになっていたアノテーションを
MyTest.java
@RunWith(SpringRunner.class)
@SpringBootTest
@Transactional
public class MyTest {
// テストコード
}
このように@DataJpaTest
アノテーションに変えるだけでした。
MyTest.java
@RunWith(SpringRunner.class)
@DataJpaTest
public class MyTest {
// テストコード
}
@DataJpaTest
だけだと、バインディングされる値は出力されないので、それも見たいときは設定ファイルが必要です。
src/test/resources/application.yml
logging:
level:
org:
hibernate:
type:
descriptor:
sql:
BasicBinder: TRACE
環境
- Spring Boot 1.4.2
- Java 8