JUnitについて(ほぼJMockit)
GWの宿題 今後内容を補充していく予定
JMockit について
基本は 記録, 再生, 検証 の3フェーズに分かれる
記録フェーズ
ここで, モック処理について記述する.
モックはテストに必要な部品の値を疑似的に設定するもの.
モック自体, result, timesの大きく3つの工程がある.
- モック
- テストに必要な部品の設定
- 引数は固定値 or any
- 引数の値をキャプチャしたい場合は
withCapture()
を使用する- キャプチャした値はリストに格納される
- そのため格納する変数としてあらかじめリストを宣言しておく必要があり
- これらはすべて
new Expectations()
の中に書く
- result
- 実行したモックの戻り値を格納する
- 戻り値が
void
の場合は省略可 - result = ~ の感じで書く
- times
- モックがテスト中に何回実行するか指定する
- この値が間違っていると
mockit.internal.MissingInvocation
が発生する
再生フェーズ
ここで実際テストしたい処理を記述する
検証フェーズ
テストした内容が正しいかチェックする
チェックにはJUnitのasert
文を使用する
モックの引数をキャプチャしたものなども使用することがある