単体テスト(たんたいてすと)とは、開発したプログラム全体を一度にテストするのではなく、プログラムを構成する「最小の部品(関数やクラス、メソッドなど)」が、それぞれ単体で正しく動くかどうかを確認する最初のテスト工程です。英語では「ユニットテスト」とも呼ばれます。
家づくりに例えると、家全体の組み立てを始める前に、使用する柱やレンガ、ドアノブなどの各パーツ自体に傷がないか、強度や寸法が正しいかを個別にチェックする作業に似ています。この段階で個々の部品の欠陥を見つけて直しておくことで、後の工程で大きな手戻りが発生するのを防ぐことができます。
例えば、スマートフォンのアプリで「生年月日を入力すると、現在の年齢を計算する関数」を開発したとします。この関数に対する単体テストでは、以下のような検証を行います。