コントラクトテストは、連携する二つのプログラムが交換する情報の形について合意しているかを確認します。送り手と受け手が想定するサイズと宛先に、配送箱が合っているか確かめるようなものです。

たとえば、アプリは天気サービスから温度フィールドが返ると想定することがあります。そのフィールド名が変わったとき、利用者に影響が出る前にコントラクトテストで検出できます。

このテストは個々のプログラムの全詳細ではなく、連携する部分同士の合意に焦点を当てます。別々のチームが両側を開発する場合に特に役立ちます。