ougarairin’s diary

技術的なことと読んだ本とV

JUnitについて(ほぼJMockit)

GWの宿題 今後内容を補充していく予定

JMockit について

基本は 記録, 再生, 検証 の3フェーズに分かれる

記録フェーズ

ここで, モック処理について記述する.
モックはテストに必要な部品の値を疑似的に設定するもの.
モック自体, result, timesの大きく3つの工程がある.

  • モック
    • テストに必要な部品の設定
    • 引数は固定値 or any
    • 引数の値をキャプチャしたい場合は withCapture() を使用する
      • キャプチャした値はリストに格納される
      • そのため格納する変数としてあらかじめリストを宣言しておく必要があり
    • これらはすべて new Expectations() の中に書く
  • result
    • 実行したモックの戻り値を格納する
    • 戻り値が void の場合は省略可
    • result = ~ の感じで書く
  • times
    • モックがテスト中に何回実行するか指定する
    • この値が間違っていると mockit.internal.MissingInvocation が発生する

再生フェーズ

ここで実際テストしたい処理を記述する

検証フェーズ

テストした内容が正しいかチェックする
チェックにはJUnitasert 文を使用する
モックの引数をキャプチャしたものなども使用することがある