単体テスト(ユニットテスト)とは、関数やメソッドなどプログラムの最小構成単位を個別に検証するテスト手法である。外部依存をモックに置き換え、対象のロジックだけを高速に確認できる。
## 何を「単体」とするか 単体テストの「単体」は言語やフレームワークによって粒度が異なる。関数1つを指すこともあれば、1つのクラスやモジュール全体を指すこともある。共通しているのは「外部 I/O(DB、ネットワーク、ファイルシステム)を排除した状態でテストする」という原則だ。
外部依存はモックやスタブに差し替える。Supabase のクエリ結果をモックオブジェクトで返す、API コールをスタブに置き換えるといった具合だ。これにより実行速度がミリ秒単位に収まり、CI パイプラインで数百〜数千件を毎コミット回せる。
## モックの限界 モックは任意のプロパティを持つオブジェクトを返せるため、DB スキーマとの不整合を検出できない。「テストは全件 GREEN だが本番で column does not exist」というインシデントは珍しくない。単体テストはビジネスロジックの検証には強いが、システム境界の整合性は機能テストや E2E テストで補完する必要がある。
## TDD との関係 TDD(テスト駆動開発)は単体テストを「設計ツール」として活用する開発手法だ。テストを先に書くことで、関数の入出力仕様が実装前に確定する。単体テストの存在が前提となるため、両者は密接に結びついている。


A2A(Agent-to-Agent Protocol)とは、異なる AI エージェント同士が能力の発見・タスクの委譲・状態の同期を行うための通信プロトコルであり、Google が 2025 年 4 月に公開した。

Agent Skills とは、AI エージェントに特定のタスクや専門知識を実行させるために定義された再利用可能な命令セットであり、エージェントの能力を拡張するモジュール単位として機能する。

Agentic AI とは、人間の逐一の指示なしに目標を解釈し、計画の立案・実行・検証を自律的に繰り返す AI システムの総称である。


ATDD(Acceptance Test-Driven Development)とは、開発着手前に受け入れテストの基準をチーム全体で定義し、そのテストを自動化してから実装を進める開発手法である。