はたらクラフト

AIが書くテストは無駄だらけ。OpenClawのテスト監査スキルで3割削減

開発・運用の仕組み化

AIにアプリを作らせると、テストも大量に書いてくれます。テストとは、プログラムが期待どおりに動くかを自動で確かめるプログラムのことです。

しかし、テストは多ければ多いほど良いわけではなく、全部通っていれば安心というわけでもありません。

この記事では、価値あるテストの定義と、その定義を基準に無駄なテストを削るOpenClawのテスト監査スキルの内容と使い方を解説します。

※OpenClawは2026年初めに、爆発的に人気になったAIエージェントツールです

動画で見たい方はこちら。

テストの価値は、壊れたときに気づけるかの一点だけ

同じバグ入りコードに対する、気づけるテストと気づけないテストの判定結果の違い

テストで最も重要なのは、機能が壊れたときに気づけるかです。この点さえ守れていれば、テストが多くても少なくてもかまいません。

反対に、壊れたときに気づけないテストなら、全部通っていても安心できません。AIが書くテストには、バグがあっても通るものが混ざります。

実際、トロント大学の2026年の研究では、バグのあるコードを見せてAIにテストを書かせると、バグの動きを正しいとみなすテストが増えました。

AIが増やし続けるテストは、実行時間とトークン消費を増やす

AIが積み上げ続けるテストの山による実行時間とトークン消費の増加

AIはコードを書くたびにテストを足します。バグを直せば再発を防ぐテスト、機能を直せばその機能の新しい観点のテスト、という具合です。

OpenClawの開発チームも、AIがプログラムの中身をなぞるだけのテストや、同じ確認を繰り返すテストを足し続けることを問題に挙げています。

テストが多いほど実行に時間がかかり、AIが少しコードを直すだけでも関連するテストを全て見直すため、トークン消費も増えます。かといってテストを減らしすぎると、機能が壊れたときに見逃します。

OpenClaw製作者のテスト監査スキルは、無駄なテストだけを削る

壊れたときに気づけるかの一点でテストを残す・削るに振り分ける対比図解

OpenClawのテスト監査スキルは、壊れたときに気づけるかというテストの価値を最も重視して設計されています。無駄なテストはどんどん削り、削ると壊れたときに見逃すテストは残します。

このスキルは、AIにテスト監査のやり方を教えるものです。OpenClawの開発チームが改良を続けており、商用利用もできるMITライセンスで、誰でも無料で使えます。

作ったのは、OpenClawの製作者ピーター・シュタインバーガーさんです。

自社サイトでは無駄なテストコードが約3割減った

バグ検知の有無によるテストの取捨選択とコード行数の減少

ぼくの自社サイトでテスト監査スキルを試すと、テストコードは5,903行から4,287行へ、約3割減りました。

闇雲に削ったわけではありません。AIが実際に動く本番のコードにわざとバグを埋め込み、残したテストがそのバグに気づくかを確かめています。そのテストがないとバグを見逃すものは、ちゃんと残りました。

全テストに「残す・直す・まとめる・消す」と根拠を書く台帳で監査する

AIが全テストを「残す・直す・まとめる・消す」の4ラベルと根拠で仕分ける台帳

スキルのテスト監査では、まず台帳を用意します。台帳では、全てのテストに「残す」「直す」「まとめる」「消す」のいずれかのラベルと、その根拠を1行ずつ書きます。

あとは台帳をもとに、さまざまな観点から順序立てて、機能が壊れたときにテストが気づくきっかけになるかを検証し、選別します。バグを埋め込む確認も、この検証の1つです。

詳しい監査の手順はかなり専門的なので、知りたい方はAIにスキルの内容を質問してみてください。

導入はAIへの指示1つ。自分のプロジェクト向けに最適化する

AIへの1つの指示でスキル導入と最適化を行う流れ

テスト監査スキルはOpenClaw専用に作られており、OpenClaw独自のコマンドやフォルダが書かれています。自分のプロジェクトで使うには、プロジェクトの構成に合わせた最適化が必要です。

ぼくは、導入と最適化をClaude Codeに任せました。スキルのリンクを渡して、次のように指示しただけです。

https://github.com/openclaw/openclaw/tree/main/.agents/skills/test-audit のスキルを、このプロジェクトのスキルとして導入して。このスキルはOpenClaw用に作られているので、このプロジェクトの構成に沿って最適化して。内容は日本語にして

これで、テスト監査スキルがすぐに使える状態になります。スキルの中身は監査手順を書いたファイル2つ(SKILL.mdとCAMPAIGN.md)だけです。

使い方:新しいテストは自動で選別、既存のテストは領域ごとに刈り込む

新しいテストの自動選別と既存テストの領域別刈り込みという2通りの使い方

導入後は、AIがテストを書くときや、「このテストは必要?」とテストについて質問したときに、スキルが自動で使われます。以降にAIが書くテストは、このスキルの基準で自動選別されます。

既存のテストは、「〇〇のテストを刈り込んで」と指示すると、その領域のテストを丸ごと監査し、無駄を削って整えてくれます。

データベースに関するテストを刈り込んで

領域は、データベース、画面(フロントエンド)、ログインや権限の確認(認証・認可)といった単位で指定します。

注意点:複数の領域をまとめて監査させない

画面、データベース、認証・認可の同時監査によるコンテキストウィンドウの満杯と、1領域ずつ監査する場合との対比

画面、データベース、認証・認可など、複数の領域をまとめて監査させるのはおすすめしません。複数の領域を複数の観点で一気に見るのは、AIでも難しく、ミスにつながります。

また、AIの記憶領域であるコンテキストウィンドウがいっぱいになり、これもミスの原因になります。刈り込みは、1回に1つの領域ずつ指示してください。

まとめの前に、お知らせを。

無料メルマガで実務で使えるAI活用を毎日配信中。1分で登録できます。

超実践AI論Substacktaichiaiworker.substack.com

ながら聞きで、AIを仕事に活かす方法がわかるポッドキャストをSpotifyでも配信しています。

超実践AI論Spotifyopen.spotify.com

まとめ:テストの価値は数ではなく、壊れたときに気づけるか

この記事の要点は次の5つです。

  • テストの価値は、壊れたときに気づけるかの一点だけ
  • テストが多すぎると実行時間とトークン消費がかさみ、少なすぎると壊れたときに見逃す
  • OpenClawのテスト監査スキルは、台帳と検証で無駄なテストだけを削る
  • 導入はスキルのリンクをAIに渡し、最適化と日本語化を指示するだけ
  • 既存のテストは「〇〇のテストを刈り込んで」で1領域ずつ監査

まずはこのスキルを導入して、1つの領域のテストを刈り込んでみてください。無駄なテストをどんどん削ってくれます。

この記事をシェア

自分の業務アプリを、AIで自力で作る

AIで自分の業務アプリを作り、自力で修正もできるまでを、経歴10年のITエンジニアが1対1で個別サポートします。残り5名までモニター価格です。