論文の概要: CoverUp: Coverage-Guided LLM-Based Test Generation
- arxiv url: http://arxiv.org/abs/2403.16218v3
- Date: Mon, 10 Feb 2025 17:15:52 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-02-11 14:28:39.944929
- Title: CoverUp: Coverage-Guided LLM-Based Test Generation
- Title(参考訳): CoverUp:Coverage-Guided LLMベースのテスト生成
- Authors: Juan Altmayer Pizzorno, Emery D. Berger,
- Abstract要約: CoverUpは、ハイカバレッジPython回帰テストを生成するための新しいアプローチである。
オープンソースのPythonプロジェクトから派生した挑戦的なコードのベンチマークで,CoverUp実装のプロトタイプを評価した。
- 参考スコア(独自算出の注目度): 0.7673339435080445
- License:
- Abstract: Testing is an essential part of software development. Test generation tools attempt to automate the otherwise labor-intensive task of test creation, but generating high-coverage tests remains challenging. This paper proposes CoverUp, a novel approach to driving the generation of high-coverage Python regression tests. CoverUp combines coverage analysis, code context, and feedback in prompts that iteratively guide the LLM to generate tests that improve line and branch coverage. We evaluate our prototype CoverUp implementation across a benchmark of challenging code derived from open-source Python projects and show that CoverUp substantially improves on the state of the art. Compared to CodaMosa, a hybrid search/LLM-based test generator, CoverUp achieves a per-module median line+branch coverage of 80% (vs. 47%). Compared to MuTAP, a mutation- and LLM-based test generator, CoverUp achieves an overall line+branch coverage of 90% (vs. 77%). We also demonstrate that CoverUp's performance stems not only from the LLM used but from the combined effectiveness of its components.
- Abstract(参考訳): テストはソフトウェア開発の重要な部分です。
テスト生成ツールは、他の作業集約的なテスト生成タスクを自動化する試みだが、高いカバレッジテストを生成することは依然として難しい。
本稿では,ハイカバレッジなPython回帰テストを生成するための新しいアプローチであるCoverUpを提案する。
CoverUpはカバレッジ分析、コードコンテキスト、フィードバックを組み合わせることで、LLMを反復的にガイドし、ラインとブランチのカバレッジを改善するテストを生成する。
プロトタイプのCoverUp実装を、オープンソースのPythonプロジェクトから派生した挑戦的なコードのベンチマークで評価し、CoverUpが最先端で大幅に改善されていることを示す。
ハイブリッド検索/LLMベースのテストジェネレータであるCodaMosaと比較して、CoverUpはモジュールごとの中央値ライン+ブランチカバレッジを80%(vs.47%)達成している。
変異およびLLMベースのテストジェネレータである MuTAP と比較して、CoverUp は全行+ブランチカバレッジを90%(vs.77%)達成している。
また、CoverUpのパフォーマンスは、使用するLCMだけでなく、そのコンポーネントの複合的な有効性からもたらされることを示した。
関連論文リスト
- CLOVER: A Test Case Generation Benchmark with Coverage, Long-Context, and Verification [71.34070740261072]
本稿では,テストケースの生成と完成におけるモデルの能力を評価するためのベンチマークCLOVERを提案する。
ベンチマークはタスク間でのコード実行のためにコンテナ化されています。
論文 参考訳(メタデータ) (2025-02-12T21:42:56Z) - ProjectTest: A Project-level LLM Unit Test Generation Benchmark and Impact of Error Fixing Mechanisms [48.43237545197775]
単体テスト生成はLLMの有望かつ重要なユースケースとなっている。
ProjectTestは、Python、Java、JavaScriptをカバーするユニットテスト生成のためのプロジェクトレベルのベンチマークである。
論文 参考訳(メタデータ) (2025-02-10T15:24:30Z) - Learning to Generate Unit Tests for Automated Debugging [52.63217175637201]
ユニットテスト(UT)は、コードの正確性を評価するだけでなく、大きな言語モデル(LLM)へのフィードバックを提供する上でも重要な役割を果たします。
提案するUTGenは,LLMに対して,予測出力とともにエラーを示す単体テスト入力を生成することを教える。
UTGenがUT生成ベースラインを7.59%向上させることを示す。
論文 参考訳(メタデータ) (2025-02-03T18:51:43Z) - AIME: AI System Optimization via Multiple LLM Evaluators [79.03422337674664]
AIME は複数の LLM を利用した評価プロトコルであり、それぞれが独立した基準で評価を生成し、結合を通してそれらを結合する。
コード生成タスクにおける AIME のベースラインメソッドのパフォーマンスは,LeetCodeHard と HumanEval データセットの単一 LLM 評価プロトコルよりも最大 62% 高いエラー検出率,最大 16% 高い成功率で向上している。
論文 参考訳(メタデータ) (2024-10-04T04:03:24Z) - TestGenEval: A Real World Unit Test Generation and Test Completion Benchmark [24.14654309612826]
TestGenEvalは、1,210のコードから68,647のテストと、11の保守されたPythonリポジトリにまたがるテストファイルペアで構成されている。
初期テストのオーサリング、テストスイートの補完、コードカバレッジの改善をカバーしている。
パラメータは7Bから405Bまで様々である。
論文 参考訳(メタデータ) (2024-10-01T14:47:05Z) - Large Language Models as Test Case Generators: Performance Evaluation and Enhancement [3.5398126682962587]
大規模言語モデルが高品質なテストケースをいかに生み出すかを検討する。
本稿では,テストインプットとテストアウトプットの生成を分離するemphTestChainというマルチエージェントフレームワークを提案する。
以上の結果から,TestChainはベースラインのマージンを大きく上回っていることが示唆された。
論文 参考訳(メタデータ) (2024-04-20T10:27:01Z) - Automated Unit Test Improvement using Large Language Models at Meta [44.87533111512982]
本稿では,LLMを用いたMetaのTestGen-LLMツールについて述べる。
InstagramとFacebookプラットフォームのMetaテストアソンにおけるTestGen-LLMのデプロイについて説明する。
論文 参考訳(メタデータ) (2024-02-14T13:43:14Z) - StepCoder: Improve Code Generation with Reinforcement Learning from
Compiler Feedback [58.20547418182074]
2つの主要コンポーネントからなるコード生成の新しいフレームワークであるStepCoderを紹介します。
CCCSは、長いシーケンスのコード生成タスクをCurriculum of Code Completion Subtaskに分割することで、探索課題に対処する。
FGOは、未実行のコードセグメントをマスクすることでのみモデルを最適化し、Fine-Grained Optimizationを提供する。
提案手法は,出力空間を探索し,対応するベンチマークにおいて最先端の手法より優れた性能を発揮する。
論文 参考訳(メタデータ) (2024-02-02T13:14:31Z) - Code-Aware Prompting: A study of Coverage Guided Test Generation in Regression Setting using LLM [32.44432906540792]
テスト生成における大規模言語モデルのコード認識促進戦略であるSymPromptを提案する。
SymPromptは、正しいテスト世代を5倍に増やし、CodeGen2の相対カバレッジを26%向上させる。
特に、GPT-4に適用すると、SymPromptはベースラインのプロンプト戦略に比べて2倍以上のカバレッジが向上する。
論文 参考訳(メタデータ) (2024-01-31T18:21:49Z) - An Empirical Evaluation of Using Large Language Models for Automated
Unit Test Generation [3.9762912548964864]
本稿では,自動単体テスト生成における大規模言語モデルの有効性について,大規模な実証評価を行った。
これはJavaScript用のテスト生成ツールで、npmパッケージ内のすべてのAPI関数のユニットテストを自動的に生成します。
TestPilotの生成されたテストの92.8%は、既存のテストと50%以上の類似性を持っていない。
論文 参考訳(メタデータ) (2023-02-13T17:13:41Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。