spring bootのテストについてちょっとしたことを書いていく。
- DBUnitのXlsDataSet?クラスを使ってテスト用のデータをエクセルで準備したりすると便利
そのため、DBのテーブル名の長さはエクセルのシート名の文字列の制限内にしたほうが良いと思う。
もしDBのテーブル名が長い場合は、LibreOffice?のCalcをつかうと、長い名前のシートに対応しているという抜け道もある。
- Beanの定義が見つからないエラーの場合、@Profileで、設定されている場合がある。
- @MockBean? と @Mockは 提供している会社がちがっている。テスト時に、コントローラクラスをRESTで呼び出すとき、@Mockでは、ギリコントローラクラスを変えるぐらいだけども、そこで使っているサービスとかまではモック化できない。 @MockBean?を使って単体テストを作るべき。
- 単体テスト時に、application.ymlの値を使いたくない場合は、@TestPropertySource?で設定値のモックのようなことができる。