単体テストとは、プログラムを構成する最小単位の部品(関数やメソッドなど)が、仕様どおりに動作するかを個別に確認する作業です。システム開発の工程の中でも早い段階で行われ、不具合をできるだけ早く見つけて修正することを目的としています。
意味
大きなシステムは、多くの小さな部品を組み合わせて作られています。単体テストは、その部品を一つずつ取り出し、単独で動かして正しい結果が出るかを検証する作業です。例えば「入力された金額に消費税を加算する機能」であれば、決まった金額を入れたときに正しい税込み額が返ってくるかを確認します。想定どおりの入力だけでなく、空の値や極端に大きい値など、通常とは異なる入力を与えて挙動を確かめることもあります。この段階で問題を見つけておくと、後工程での手戻りを減らせます。
使われる場面と具体例
- システム開発会社のプログラマーが、担当した機能を作り終えた直後に、その機能単体が仕様どおりに動くかを確認するために実施します。
- 品質管理担当者が、開発工程の進捗を確認する際に、単体テストの実施状況や合格率を報告資料として求める場合があります。
- 保守・改修の担当者が、既存システムに手を加えた後、変更箇所が意図せず他の動作を壊していないかを確認するために、関連する単体テストを再実行します。
中小企業が押さえたい点
- 単体テストは発注者が直接目にする工程ではありませんが、品質を支える基礎であるため、見積書や仕様書に実施範囲が明記されているかを確認すると安心です。
- 単体テストだけでシステム全体の動作が保証されるわけではなく、部品同士を組み合わせて確認する結合テストや、業務として使えるかを確認する受け入れテストが別途必要になります。
- 開発を依頼する際は、単体テストの結果をどの程度記録・報告してもらえるかを事前に取り決めておくと、後から品質面のトラブルが起きたときに経緯を確認しやすくなります。
よくある誤解
単体テストを十分に行えばシステム全体が問題なく動く、という誤解がよく見られますが、部品同士の連携部分の不具合は単体テストでは見つかりません。また、単体テストは開発者が任意で行う作業だと思われがちですが、契約内容によっては実施と記録が成果物の一部として求められる場合があります。
よくある質問
Q. 単体テストは誰が行うのですか。
A. 多くの場合、その部品を作成したプログラマー自身が行います。
Q. 単体テストの結果は発注者に共有されるものですか。
A. 契約内容によります。品質を重視する場合は、実施状況や結果の報告を求めることができます。
Q. 単体テストを省略するとどうなりますか。
A. 部品単位の不具合が後工程まで見つからず、修正の手間や費用が増える可能性があります。
関連する用語
関連記事
ほかの用語を探す



















