最近のGoogleの論文は、仕様駆動テスト生成が彼らのコードベースのサンプルでバグ検出を9.8パーセントポイント向上させたことを示しました。しかし、彼らの仕様はコードから読み取られており、私が気にする半分は未解決のままです。私は何ヶ月も、コードを書いたのと同じモデルによって書かれたテストスイートは、実際にはそれと矛盾できないと主張してきました。そして、私の主張を支持するために、新しいオープンソースのPythonライブラリを開発しました。
ソフトウェアテストは20年間一方向に動いており、仕様駆動開発(SDD)はその運動が最近到達した場所です。この記事はもう一歩を主張します:独立SDD、つまりISDDです。TDDはテストが仕様であると言いました。BDDはそれに対する答えでした。SDDはエージェントとともに登場したバージョンです。
現在、仕様駆動開発は作業を分割します。それは誰が知識を持っているかを分割しません。同じ仕様がプランナー、テストジェネレーター、コーディングエージェントに行きます。私の議論はその線に沿って切ることです:コーディングエージェントに決定を与え、受け入れ基準を差し控えることで、テストスイートがコードに間違っていると伝えられるようにします。
Googleのチームは差し控える前のステップを測定しました。「Grounding AI Agents in Contracts: An Empirical Evaluation of Spec-Driven Test Generation」は私の議論よりも狭いことを行います。彼らはまずそれにコードについて推論させ、契約を書かせます。その文書は認知的足場となり、そこからテストが生成されます。結果は、Google自身のコードベースの本番バグについて、半分以上の時間で、生成されたテストスイートが...
出典: Towards Data Science · 要約:HeadlinesBriefing