LoginSignup
0
0

More than 1 year has passed since last update.

SpringBootでDBUnit 〜@ExpectedDatabase〜

Last updated at Posted at 2022-05-12

SpringBootでDBのテストを書いています。
アノテーションの属性の意味を忘れないようにメモ。

@ExpectedDatabase

value

結果検証用のファイルのパスを記入する。

assertionMode

DBと結果検証用のファイルを比較のしかたを指定する属性。

DEFAULT(または指定なし)

全てのテーブルとカラムの一致を比較する。
そのため、CSV等を用意したテーブル以外も調査対象となる。

このまま使うと、

junit.framework.ComparisonFailure: table count expected:<[3]> but was:<[47]>

と言った感じのスタックトレースが出力されてしまう。DB上の全てのテーブルが見られていることがわかる。
そのため、単体テストで用いる場合は以下の2つのどちらかを指定する必要がある。

NON_STRICT

結果検証用のファイルに存在しないテーブル、カラムがあっても無視する。

NON_STRICT_UNORDERED

NON_STRICTに加えて、行の順序についても無視する。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0