PHP Conference Japan 2024
レギュラートーク(25分)

善モックと悪モック

shimabox しまぶ shimabox
2

みなさん、モックは好きですか?わたしは好きです。
外部依存から隔離してテストの実行を容易にしたり、テストを高速化できるからです。最高。

ですが、わたしが観測している限りどうやらモックというのはテストが壊れやすくなるので、なるべく使わない方がいいという風潮も耳にします。
ではテストが壊れにくければモックは使っていいのでしょうか。モックを使うとテストが壊れやすくなるのでしょうか。善いモックというのは無いのでしょうか。

そういった疑問を解消すべく、果たしてモックは悪いのか、善いモックというのはあるのか、モックの使い方はどうあるべきかをお話できればと思います。

キーワード

  • 壊れやすいテストとは何か
  • 実装の詳細が漏れるとは何か
  • ロンドン学派vs古典学派
  • アウトサイドインvsインサイドアウト
  • モック、スタブ、スパイ
  • モックとしての振る舞いとスタブとしての振る舞い