第6回:テストは「量」ではなく「質」で見る — 測り方を変えるだけで品質は変わる

「テストがたくさんあれば安心」の落とし穴

テストの数や「カバレッジ率」(テストが実行するコード範囲の割合)という指標を、経営報告で見たことがあるかもしれません。「テストカバレッジ90%」といった数字ですね。一見、品質の証拠に見えます。

ただ、ここに落とし穴があります。カバレッジ率は「テストが実行された範囲」を示すだけで、「きちんと検証された範囲」を示すわけではないのです。

ビジネスに例えましょう。ある管理職が社員50人全員と面談し「面談カバレッジ100%」と書ける状態でも、面談が形式的な顔合わせだけなら何も把握できません。数字は100%、実質は何も検証していない——テストのカバレッジ率も同じことが起こり得ます。

なぜAI時代に、この落とし穴が深刻化するのか

AIに「この機能のテストを書いて」と頼むと、一応それっぽいテストが返ってきます。カバレッジ率も上がり、数字の見た目は良くなります。ところが中身を吟味すると、「機能を実行しているだけで、正しく動いているかを確認していない」ケースが結構な割合で混ざります。

なぜか。AIは「カバレッジを上げる」目標があればそれを満たすテストを書けます。でも「何を本当に守りたいのか」というビジネス判断はAIにはできません。だから人間が指示を出さないと、数字は上がっても中身が空っぽなテストが量産されます。

テストの「質」を見るための3つの観点

観点1:重要な機能が、ちゃんと守られているか——すべての機能に同じ厚みのテストは要りません。ビジネス上の重要機能(決済処理、個人情報の取り扱い、契約更新ロジックなど)ほどテストが厚くあるべき。重要度とテストの厚みが釣り合っているかを見るのが管理職の視点です。

観点2:壊したときに、ちゃんと気づけるか——テストの本質的な役割は、将来誰かがコードを変更したときに壊れたら知らせてくれること。良いテストは「このコードを壊したら、このテストが失敗する」関係がはっきりしています。「このテストは、コードが壊れたときに気づける構造になっていますか?」と問えます。

観点3:テストそのものが、信頼できるか——同じコードなのに、ある日は通る、ある日は落ちる不安定なテストがあると、開発チームは「テストはまた失敗している。でも気にしなくていい」という感覚になります。最も危険な状態です。「テストの失敗が、たまにある『誤報』として扱われていませんか?」と問えます。

経営に「テストの質」を説明するときの言葉

経営層に「テストの質を上げたい」と相談するとき、どう説明すれば伝わるでしょうか。私が使うのは、この言い換えです。「テストに投資するのは、保守フェーズでの支払いを前倒しすること」だと。

テストが弱いプロジェクトは、リリース後に払うコストが大きい。障害対応、リファクタリング、緊急パッチ——これらはすべて後から降ってくるコストです。しかも降ってくるタイミングは、往々にして「今それどころじゃない」とき。

テストを充実させる投資は、このコストを「計画的に今払う」選択。恐いのは、見えないコスト。経営にとって、計画可能なコストは恐くありません。

AIにテストを書かせるなら、人間は何を見るか

AIにテストを書かせる運用は便利です。ただし、AI生成テストには大きな弱点があります。「実装が正しい前提」でテストを書く傾向があるのです。

AIはコードを見て、「そのコードが意図どおりに動くか」のテストを書きます。「意図」を既存コードの振る舞いから推測するため、実装が間違っていてもその間違った振る舞いに合わせてテストが書かれてしまうことがあります。実装に追随するテストは、実装の間違いを増幅するだけです。

AIにテストを任せるなら、人間は「そもそも何を守るべきか」を明確に指示する必要があります。この指示があってこそ、AIのテスト生成能力は味方になります。

まとめ — テストの質を、4段階で自己診断する

あなたの会社のテストの扱い方は、どの段階にあるでしょうか。

  • レベル1:テスト数やカバレッジ率を測っていない → まず測定から
  • レベル2:数は測っているが、中身の質までは確認していない → 「重要機能が守られているか」を問い始める
  • レベル3:重要機能のテストは厚いが、AIに任せきりの箇所もある → AI生成テストのレビュー追加
  • レベル4:重要度・壊れたら気づけるか・信頼できるかの3観点で管理 → AI時代のテスト運用として成熟

多くの組織はレベル1か2にいます。いきなり4を目指す必要はありません。次の1段階に進む小さな投資から始めるのが現実的です。


著者プロフィール

町島 和徳(ギャラクティックブレーン合同会社 代表社員)

電気通信大学在学中からコンテンツ制作の現場でキャリアをスタート。エンタメ業界での経営実務を経て、現在はコンサルタント兼フルスタックエンジニアとして活躍。経営・マーケティング・技術の複眼的視点と、部門や階層を超えたファシリテーション力を強みに、スタートアップから大手企業まで幅広いDX支援を手がける。生成AI・RPAの実務活用を精力的に展開。成功・失敗双方の実践知を惜しまず発信する現場主義のプロフェッショナル。