論文の概要: LLM Test Generation via Iterative Hybrid Program Analysis
- arxiv url: http://arxiv.org/abs/2503.13580v1
- Date: Mon, 17 Mar 2025 16:10:38 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-03-19 14:18:13.856256
- Title: LLM Test Generation via Iterative Hybrid Program Analysis
- Title(参考訳): 反復ハイブリッドプログラム解析によるLCM試験生成
- Authors: Sijia Gu, Noor Nashid, Ali Mesbah,
- Abstract要約: Pantaは、コードを分析し、テストケースを構築する際に、人間が従う反復的なプロセスをエミュレートするテクニックである。
オープンソースプロジェクトのサイクロマティックな複雑性の高いクラスで実施した経験的評価は,Pantaが26%,ブランチカバレッジが23%向上したことを示す。
- 参考スコア(独自算出の注目度): 7.121002367542988
- License:
- Abstract: Automating unit test generation remains a significant challenge, particularly for complex methods in real-world projects. While Large Language Models (LLMs) have made strides in code generation, they struggle to achieve high branch coverage due to their limited ability to reason about intricate control flow structures. To address this limitation, we introduce Panta, a technique that emulates the iterative process human developers follow when analyzing code and constructing test cases. Panta integrates static control flow analysis and dynamic code coverage analysis to systematically guide LLMs in identifying uncovered execution paths and generating better test cases. By incorporating an iterative feedback-driven mechanism, our technique continuously refines test generation based on static and dynamic path coverage insights, ensuring more comprehensive and effective testing. Our empirical evaluation, conducted on classes with high cyclomatic complexity from open-source projects, demonstrates that Panta achieves 26% higher line coverage and 23% higher branch coverage compared to the state-of-the-art.
- Abstract(参考訳): 単体テスト生成の自動化は、特に現実世界のプロジェクトでは、重要な課題である。
大きな言語モデル(LLM)はコード生成に力を入れているが、複雑な制御フロー構造を推論する能力に制限があるため、高いブランチカバレッジを達成するのに苦労している。
この制限に対処するため、コードの解析やテストケースの構築において、人間が従う反復的なプロセスをエミュレートする手法であるPantaを紹介します。
Pantaは静的制御フロー分析と動的コードカバレッジ分析を統合し、LLMを体系的にガイドし、未発見の実行パスを特定し、より良いテストケースを生成する。
反復的なフィードバック駆動機構を取り入れることで、静的および動的パスカバレッジの洞察に基づいてテスト生成を継続的に洗練し、より包括的で効果的なテストを保証する。
オープン・ソース・プロジェクトのサイクロマティック・複雑性の高いクラスで実施した実証実験の結果,Pantaは26%,ブランチ・カバレッジは23%,最先端は23%であった。
関連論文リスト
- Boundary Value Test Input Generation Using Prompt Engineering with LLMs: Fault Detection and Coverage Analysis [3.249891166806818]
本稿では,大規模言語モデル(LLM)のホワイトボックスソフトウェアテストにおける境界値テストインプット生成における有効性を評価するためのフレームワークを提案する。
本稿では, 境界値生成におけるLLMの強度と限界, 特に共通境界関連問題の検出について述べる。
本研究は, 境界値テストにおけるLCMの役割について考察し, 自動テスト手法の改善のための可能性と領域の両方について考察する。
論文 参考訳(メタデータ) (2025-01-24T12:54:19Z) - Commit0: Library Generation from Scratch [77.38414688148006]
Commit0は、AIエージェントにスクラッチからライブラリを書くよう促すベンチマークである。
エージェントには、ライブラリのAPIを概説する仕様文書と、インタラクティブなユニットテストスイートが提供されている。
Commit0はまた、モデルが生成したコードに対して静的解析と実行フィードバックを受け取る、インタラクティブな環境も提供する。
論文 参考訳(メタデータ) (2024-12-02T18:11:30Z) - Textualized Agent-Style Reasoning for Complex Tasks by Multiple Round LLM Generation [49.27250832754313]
我々は、llmベースの自律エージェントフレームワークであるAgentCOTを紹介する。
それぞれのステップで、AgentCOTはアクションを選択し、それを実行して、証拠を裏付ける中間結果を得る。
エージェントCOTの性能を高めるための2つの新しい戦略を導入する。
論文 参考訳(メタデータ) (2024-09-19T02:20:06Z) - ASTER: Natural and Multi-language Unit Test Generation with LLMs [6.259245181881262]
静的解析を組み込んだジェネリックパイプラインを記述し,コンパイル可能な高カバレッジテストケースの生成においてLCMをガイドする。
コードカバレッジとテスト自然性の観点から,生成したテストの品質を評価するための実証的研究を行った。
論文 参考訳(メタデータ) (2024-09-04T21:46:18Z) - HITS: High-coverage LLM-based Unit Test Generation via Method Slicing [37.43624865049592]
大規模言語モデル(LLM)は、Javaプロジェクトの単体テストの生成においてうまく振る舞っている。
しかし、プロジェクト内の複雑な焦点メソッドをカバーするパフォーマンスは貧弱である。
そこで本研究では, 焦点メソッドをスライスに分解し, LLMに対してスライス毎にテストケーススライスを生成することを提案する。
論文 参考訳(メタデータ) (2024-08-21T04:14:26Z) - What's Wrong with Your Code Generated by Large Language Models? An Extensive Study [80.18342600996601]
大規模言語モデル(LLM)は、標準解に比べて短いがより複雑なコードを生成する。
3つのカテゴリと12のサブカテゴリを含む誤ったコードに対するバグの分類を開発し、一般的なバグタイプに対する根本原因を分析する。
そこで本研究では,LLMがバグタイプやコンパイラフィードバックに基づいて生成したコードを批判し,修正することのできる,自己批判を導入した新たな学習自由反復手法を提案する。
論文 参考訳(メタデータ) (2024-07-08T17:27:17Z) - DARG: Dynamic Evaluation of Large Language Models via Adaptive Reasoning Graph [70.79413606968814]
本稿では,適応推論グラフ展開(DARG)によるLCMの動的評価を導入し,複雑性と多様性を制御した現在のベンチマークを動的に拡張する。
具体的には、まず現在のベンチマークでデータポイントの推論グラフを抽出し、それから推論グラフを摂動させて新しいテストデータを生成する。
このような新しく生成されたテストサンプルは、元のベンチマークと同様の言語的多様性を維持しながら、複雑さのレベルが異なる可能性がある。
論文 参考訳(メタデータ) (2024-06-25T04:27:53Z) - Enhancing LLM-based Test Generation for Hard-to-Cover Branches via Program Analysis [8.31978033489419]
難解な分岐に到達可能なテストを生成する新しい技術である TELPA を提案する。
27のオープンソースPythonプロジェクトに対する実験結果から,TELPAは最先端のSBSTやLLMベースの技術よりも優れていたことが判明した。
論文 参考訳(メタデータ) (2024-04-07T14:08:28Z) - 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) - Near-optimal Policy Identification in Active Reinforcement Learning [84.27592560211909]
AE-LSVI はカーネル化された最小二乗値 RL (LSVI) アルゴリズムの新しい変種であり、楽観主義と悲観主義を組み合わせて活発な探索を行う。
AE-LSVIは初期状態に対するロバスト性が必要な場合、様々な環境で他のアルゴリズムよりも優れていることを示す。
論文 参考訳(メタデータ) (2022-12-19T14:46:57Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。