論文の概要: Seed&Steer: Guiding Large Language Models with Compilable Prefix and Branch Signals for Unit Test Generation
- arxiv url: http://arxiv.org/abs/2507.17271v1
- Date: Wed, 23 Jul 2025 07:16:46 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-07-24 22:33:14.897052
- Title: Seed&Steer: Guiding Large Language Models with Compilable Prefix and Branch Signals for Unit Test Generation
- Title(参考訳): Seed&Steer: ユニットテスト生成のためのコンパイル可能なプリフィックスと分岐信号による大規模言語モデルの誘導
- Authors: Shuaiyu Zhou, Zhengran Zeng, Xiaoling Zhou, Rui Xie, Shikun Zhang, Wei Ye,
- Abstract要約: 単体テストはソフトウェア開発ライフサイクルにおいて重要な役割を果たす。
大規模言語モデル(LLM)に基づくアプローチの最近の進歩は、自動テスト生成を大幅に改善した。
従来のユニットテスト手法と大規模言語モデルの能力を組み合わせた2段階のアプローチであるSeed&Steerを提案する。
- 参考スコア(独自算出の注目度): 20.083515771706473
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Unit tests play a vital role in the software development lifecycle. Recent advances in Large Language Model (LLM)-based approaches have significantly improved automated test generation, garnering attention from both academia and industry. We revisit LLM-based unit test generation from a novel perspective by decoupling prefix generation and assertion generation. To characterize their respective challenges, we define Initialization Complexity and adopt Cyclomatic Complexity to measure the difficulty of prefix and assertion generation, revealing that the former primarily affects compilation success, while the latter influences test coverage. To address these challenges, we propose Seed&Steer, a two-step approach that combines traditional unit testing techniques with the capabilities of large language models. Seed&Steer leverages conventional unit testing tools (e.g., EvoSuite) to generate method invocations with high compilation success rates, which serve as seeds to guide LLMs in constructing effective test contexts. It then introduces branching cues to help LLMs explore diverse execution paths (e.g., normal, boundary, and exception cases) and generate assertions with high coverage. We evaluate Seed&Steer on five real-world Java projects against state-of-the-art baselines. Results show that Seed&Steer improves the compilation pass rate by approximately 7%, successfully compiling 792 and 887 previously failing cases on two LLMs. It also achieves up to ~73% branch and line coverage across focal methods of varying complexity, with coverage improvements ranging from 1.09* to 1.26*. Our code, dataset, and experimental scripts will be publicly released to support future research and reproducibility.
- Abstract(参考訳): 単体テストはソフトウェア開発ライフサイクルにおいて重要な役割を果たす。
大規模言語モデル(LLM)に基づくアプローチの最近の進歩は、自動テスト生成を大幅に改善し、学術と産業の両方から注目を集めている。
我々は、プレフィックス生成とアサーション生成を分離することで、新しい視点からLLMベースの単体テスト生成を再考する。
それぞれの課題を特徴づけるために、初期化複雑性を定義し、サイクロマティック複雑度を適用してプレフィックスとアサーション生成の難しさを測定し、後者がテストカバレッジに影響を与えるのに対して、前者が主にコンパイル成功に影響を与えることを明らかにした。
これらの課題に対処するために,従来のユニットテスト手法と大規模言語モデルの能力を組み合わせた2段階のアプローチであるSeed&Steerを提案する。
Seed&Steerは、従来のユニットテストツール(例:EvoSuite)を活用して、高いコンパイル成功率のメソッド呼び出しを生成する。
次に、分岐キューを導入し、LLMがさまざまな実行パス(例:正規、境界、例外ケース)を探索し、高いカバレッジでアサーションを生成するのに役立つ。
実世界の5つのJavaプロジェクトで、最先端のベースラインに対してSeed&Steerを評価します。
その結果、Seed&Steerはコンパイルパス率を約7%改善し、2つのLLMで792と887のケースをコンパイルすることに成功した。
また、最大で73%のブランチとラインカバレッジを実現し、1.09*から1.26*までのカバレッジ改善を実現している。
私たちのコード、データセット、実験的なスクリプトは、将来の研究と再現性をサポートするために公開されます。
関連論文リスト
- Impact of Code Context and Prompting Strategies on Automated Unit Test Generation with Modern General-Purpose Large Language Models [0.0]
ジェネレーティブAIは、ソフトウェアエンジニアリングにおいて注目を集めている。
単体テストはテストケースの大部分を占め、しばしばスキーマ的である。
本稿では,コードコンテキストが単体テストの品質と妥当性に与える影響について検討する。
論文 参考訳(メタデータ) (2025-07-18T11:23:17Z) - Boosting Rust Unit Test Coverage through Hybrid Program Analysis and Large Language Models [14.536415473544146]
本稿では,大規模言語モデル(LLM)を活用して高カバレッジ単体テストを生成する手法であるPALMを提案する。
PALMはプログラム解析を行い、関数内の分岐条件を特定し、それを経路制約に結合する。
このアプローチを実装し、それを10のオープンソースのRustクラッドで評価します。
論文 参考訳(メタデータ) (2025-06-10T17:21:21Z) - Hallucination to Consensus: Multi-Agent LLMs for End-to-End Test Generation with Accurate Oracles [2.908307411619051]
ユニットテストは、ソフトウェアの正しさを保証する上で重要な役割を担います。
従来の手法は、テストを生成するために検索ベースまたはランダム化アルゴリズムに依存していた。
我々は、JUnitテストの自動生成のための新しいエンドツーエンドのプロンプトベースのフレームワークであるCANDORを提案する。
論文 参考訳(メタデータ) (2025-06-03T14:43:05Z) - EquiBench: Benchmarking Large Language Models' Understanding of Program Semantics via Equivalence Checking [55.81461218284736]
EquiBenchは、大規模言語モデル(LLM)を評価するための新しいベンチマークである。
2つのプログラムが全ての可能な入力に対して同一の出力を生成するかどうかを決定する。
19の最先端LCMを評価し、最高の精度は63.8%と76.2%であり、これは50%のランダムベースラインよりわずかに高い。
論文 参考訳(メタデータ) (2025-02-18T02:54:25Z) - Commit0: Library Generation from Scratch [77.38414688148006]
Commit0は、AIエージェントにスクラッチからライブラリを書くよう促すベンチマークである。
エージェントには、ライブラリのAPIを概説する仕様文書と、インタラクティブなユニットテストスイートが提供されている。
Commit0はまた、モデルが生成したコードに対して静的解析と実行フィードバックを受け取る、インタラクティブな環境も提供する。
論文 参考訳(メタデータ) (2024-12-02T18:11:30Z) - 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) - CodeRAG-Bench: Can Retrieval Augment Code Generation? [78.37076502395699]
検索拡張生成を用いたコード生成の系統的,大規模な解析を行う。
まず、コード生成タスクの3つのカテゴリを含む総合的な評価ベンチマークであるCodeRAG-Benchをキュレートする。
CodeRAG-Bench上のトップパフォーマンスモデルについて、1つまたは複数のソースから検索したコンテキストを提供することにより検討する。
論文 参考訳(メタデータ) (2024-06-20T16:59:52Z) - Advancing Code Coverage: Incorporating Program Analysis with Large Language Models [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) - Generative Judge for Evaluating Alignment [84.09815387884753]
本稿では,これらの課題に対処するために,13Bパラメータを持つ生成判断器Auto-Jを提案する。
我々のモデルは,大規模な実環境シナリオ下でのユーザクエリとLLM生成応答に基づいて訓練されている。
実験的に、Auto-Jはオープンソースモデルとクローズドソースモデルの両方を含む、強力なライバルのシリーズを上回っている。
論文 参考訳(メタデータ) (2023-10-09T07:27:15Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。