ローカルAIがテストを変えるのではない。テストがAIを安全にするのだ

John Smith

Hatched by John Smith

Jun 25, 2026

1 min read

61%

0

いま本当に起きている変化は、コード生成ではなく「検証の民主化」だ

ローカルで動くLLMにコードを書かせることは、もう珍しいことではありません。Ollamaでモデルを立ち上げ、VS Codeの拡張から指示を出し、手元の環境でそのまま修正案を受け取る。ここだけを見ると、話題の中心は「どれだけ手軽にコードを生成できるか」に見えます。けれど本当に重要なのはそこではありません。

生成のコストが下がると、価値の中心は生成そのものから検証へ移る。これはAI時代の最初の大きな転換です。コードを書くことが簡単になるほど、何が正しく動くのかを素早く確かめる能力のほうが支配的になります。そこで突然、テストが脇役ではなく、AI開発の主役として立ち上がります。

生成の速度が上がるほど、信頼の速度が問われる。

ローカルLLMとテストは、一見すると別々の話です。片方は未来っぽい自動化、もう片方は地味な品質保証。しかしこの二つを並べると、もっと深い問いが見えてきます。人間はAIにどこまで任せられるのかではなく、任せるために何を先に作るべきか。その答えの中心にあるのが、テストなのです。


生成が安くなると、失敗は高くなる

AIがコードを書くときの魅力は、最初の数十秒で成果物らしきものが現れることです。小さなAPI、ユーティリティ関数、画面の部品、テストのたたき台まで、驚くほどすばやく形になります。これはまるで、料理人がレシピを見ながら大量の材料を一気に切りそろえてくれるようなものです。手は速いし、見た目はそれらしい。

しかし、切ることが速くなるほど怖いのは、間違った切り方も高速化することです。コード生成の本当のコストは、書く時間ではなく、後から見つけるバグ、曖昧な仕様、期待と違う挙動にあります。AIは下書きを大量生産できますが、その下書きが正しいかどうかを保証してはくれません。

ここでテストの役割が変わります。従来のテストは、主に人間が書いたコードの回帰を防ぐための防波堤でした。ところがAIが書くコードは、回帰を生む速度も速い。するとテストは単なる保険ではなく、生成物を評価する測定器になります。何がうまく動いたのか、どこで期待が崩れたのかを機械的に示す装置です。

この転換は重要です。AIに任せるほど、人間はコードの細部を全部読むより、テストを読むほうが賢くなる。つまり、テストは確認のための副産物ではなく、指示の完成形になります。


テストは「後で確認するもの」ではなく、「先に境界を決めるもの」

Supertestのようなテストは、HTTPエンドポイントに対してリクエストを投げ、レスポンスを検証するのに向いています。表面的にはとても実務的な道具です。しかし、その本質はもっと深いところにあります。テストは単に正誤を判定するのではなく、システムのふるまいの境界を言語化するのです。

たとえば「ユーザー作成API」を考えてみましょう。AIに「ユーザー登録機能を作って」と伝えるだけでは、実装は揺れます。入力形式、必須項目、重複時のステータスコード、エラーメッセージの扱い、認証が必要かどうか。こうした曖昧さは、AIにとっても人間にとっても解釈の余地になります。

しかしテストがあると、話は変わります。

  1. 正常系では 201 を返す
  2. メールが空なら 400 を返す
  3. 既存ユーザーなら 409 を返す
  4. レスポンスボディはこのスキーマに従う

こう書いた瞬間、仕様は曖昧な期待から検証可能な約束になります。AIはその約束に合わせてコードを組み立てやすくなるし、人間もあとで読み返したときに迷いません。

良いテストは、コードの正しさを測る道具である前に、仕様の輪郭を削り出すノミである。

ここにローカルLLMとの相性があります。ローカルでAIを動かすと、試行回数が増えます。待ち時間が短く、ネット越しのやりとりも少ない。すると、テストを先に書いて小さく生成し、小さく失敗し、小さく直すという循環が成立しやすくなる。AIの力を活かすには、むしろ失敗の単位を小さくする設計が必要なのです。


ローカルLLMとテストは、どちらも「フィードバックを短くする」技術である

この二つの技術は、役割は違っても同じ方向を向いています。ローカルLLMは、思考から修正までの距離を縮めます。テストは、変更から結果確認までの距離を縮めます。どちらも、長い待ち時間を削り、試行錯誤を加速する装置です。

この視点で見ると、開発の現場で起きるボトルネックがはっきりします。問題は「コードを書く速度が遅いこと」ではなく、「仮説検証のループが長すぎること」です。AIがコードを書いてくれても、動くかどうか分かるのに時間がかかるなら、学習速度は上がりません。

ここで重要なのは、ローカルであることが単なるプライバシーやコストの話ではない点です。ローカル実行の本当の強みは、心理的な実験回数を増やせることにあります。クラウドのAPIを呼ぶとき、人は無意識に「無駄打ち」を避けます。少し高いし、少し遅いし、少し遠いからです。けれどローカルなら、気軽にプロンプトを変え、テストを追加し、失敗を観察できます。

これはまるで、机の上に小さな実験室を持つようなものです。大きな研究所ではなく、手元で何度も試せる簡易装置。そこで初めて、AIは魔法ではなく対話可能な部品になります。

このときテストは、単にバグを見つけるためのものではありません。AIへの問いをより正確にするための装置です。AIに「もっと良くして」と頼むより、「このテストを通して」と頼むほうが、はるかに明確です。前者は感覚、後者は計測です。AI時代に強いのは、感覚ではなく計測で会話できる人です。


本当に賢いワークフローは、AIに実装させる前にテストで世界を狭める

多くの人は、AIを使うときに「どう書かせるか」を考えます。もちろんそれも大事です。しかし、より効果的なのは「どんな自由度を最初に消すか」を設計することです。AIは可能性を広げる装置ですが、開発では可能性の広さがそのまま混乱の広さになります。

だからこそ、最初にやるべきは実装ではなく制約の定義です。テストはその最も実用的な形式です。エンドポイントの入力、出力、異常系、境界値、状態遷移を先に書くことで、AIが迷う余地を減らせます。結果として、生成されるコードは「自由な創作」ではなく「定義された問題への解答」になります。

ここには、人間の役割の変化もあります。以前は人間が実装者で、テストはそのあとに置かれることが多かった。これからは、人間は仕様編集者になります。何を保証したいのか、どこまでを正とみなすのか、何を例外として扱うのかを明文化し、その制約の中でAIに実装させる。これは作業の単純な自動化ではなく、認知の再配置です。

AIに実装を任せるとは、自由を渡すことではない。むしろ、正しさの条件を先に定義することだ。

Supertestのような道具は、その再配置に非常に向いています。リクエストとレスポンスという明快な入出力は、AIにとっても人間にとっても扱いやすいからです。テストがそのまま仕様書になり、仕様書がそのまま実行可能になる。ここに、ローカルLLMの即応性が重なると、開発は「書いてから考える」から「境界を決めてから生成する」へと移ります。


Key Takeaways

  1. AI開発の本当のボトルネックは生成ではなく検証 コードを早く書けても、正しさを素早く確かめられなければ生産性は上がりません。

  2. テストは仕様を固定する道具である テストを書くことは、期待を曖昧な文章から機械的に検証できる約束へ変えることです。

  3. ローカルLLMの価値は試行回数を増やせることにある 低コストで何度も試せる環境は、AIとの対話を実験に変えます。

  4. AIに書かせる前に、テストで自由度を減らす 先に境界を定義すると、AIは迷いにくくなり、出力の質が安定します。

  5. 人間の役割は実装者から仕様編集者へ移る これからの開発者は、何を正しいとみなすかを設計する力がより重要になります。


未来の開発は「賢いモデル」より「賢い境界」で決まる

ここまで見てきたように、ローカルLLMとテストは別々の便利技術ではありません。両者は、不確実性を扱うための補完関係にあります。AIが不確実な候補を大量に出し、テストがその候補を選別する。片方だけでは片輪走行ですが、組み合わさると開発は驚くほど安定します。

本当に重要なのは、より大きなモデルを使うことではないかもしれません。もっと重要なのは、より良い境界を持つことです。何を入力とし、何を期待し、何を失敗とみなすか。その定義が鋭いほど、AIは頼れる相棒になります。逆に言えば、境界が曖昧なままAIを導入しても、ただ速く混乱するだけです。

だから、次にAIでコードを書かせるときは、まずこう問い直してみてください。この機能の正しさは、どのテストで表現されるべきか。その問いに答えられるなら、AIは単なる生成機ではなく、あなたの設計を加速する実験装置になります。

そしてその瞬間、開発の主役はコードではなくなります。主役は、コードが従うべき明確な約束です。ローカルAIがその約束を壊すのではありません。むしろ、テストによって約束が見える形になるからこそ、AIは初めて安全に速く走れるのです。

Sources

← Back to Library

Hatch New Ideas with Glasp AI 🐣

Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)

Start Hatching 🐣