プログラマとプロマネのあいだ

プログラマもやるし、プロマネもやるし、たまに似非アーキとか営業っぽいこともやる

Expectations/Verificationsの違い

Expectations 記録フェーズで使う。モックの振る舞い記録と、リプレイが行われたことの検証に使われる。
Verifications 検証フェーズで使う。行われたリプレイの検証に使われる。Expectationsと違い、モックの振る舞い記録ができない。(result変数への代入や、returnsは使えない)


Java - JMockit使い方メモ - Qiita
によると、

個人的には、 NonStrictExpectations と Verifications の合わせ技の方が、 setup, exercise, verify の3フェーズが明確になってコードが読みやすくなる気はする。
(Expectations 単独だと、 setup と verify のフェーズが一緒になってしまい、コードが読みにくい気が若干している)


ってことなんですが、リプレイされないものを記録しても意味がないので、
私個人的には、Expectations と Verifications の合わせ技の方が良いと思います。
(NonStrictExpectationsとExpectatinosの違いは、昨日の記事を参照:
Expectations/NonStrictExpectations/StrictExpectationsの違い


ちなみに、上記記事で引用している部分ですが、現在は削られているようです。。
JMockit - Tutorial - Behavior-based testing