論文の概要: Automated Generation of Issue-Reproducing Tests by Combining LLMs and Search-Based Testing
- arxiv url: http://arxiv.org/abs/2509.01616v1
- Date: Mon, 01 Sep 2025 16:54:24 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-09-04 15:17:03.787647
- Title: Automated Generation of Issue-Reproducing Tests by Combining LLMs and Search-Based Testing
- Title(参考訳): LLMとサーチベーステストを組み合わせた課題再現テストの自動生成
- Authors: Konstantinos Kitsios, Marco Castelluccio, Alberto Bacchelli,
- Abstract要約: 問題再現テストはバグの多いコードで失敗し、パッチが適用されるとパスします。
過去の研究によると、開発者はこのようなテストなしでパッチをコミットすることが多い。
問題パッチペアから問題再現テストを自動的に生成するツールを提案する。
- 参考スコア(独自算出の注目度): 5.008597638379228
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Issue-reproducing tests fail on buggy code and pass once a patch is applied, thus increasing developers' confidence that the issue has been resolved and will not be re-introduced. However, past research has shown that developers often commit patches without such tests, making the automated generation of issue-reproducing tests an area of interest. We propose BLAST, a tool for automatically generating issue-reproducing tests from issue-patch pairs by combining LLMs and search-based software testing (SBST). For the LLM part, we complement the issue description and the patch by extracting relevant context through git history analysis, static analysis, and SBST-generated tests. For the SBST part, we adapt SBST for generating issue-reproducing tests; the issue description and the patch are fed into the SBST optimization through an intermediate LLM-generated seed, which we deserialize into SBST-compatible form. BLAST successfully generates issue-reproducing tests for 151/426 (35.4%) of the issues from a curated Python benchmark, outperforming the state-of-the-art (23.5%). Additionally, to measure the real-world impact of BLAST, we built a GitHub bot that runs BLAST whenever a new pull request (PR) linked to an issue is opened, and if BLAST generates an issue-reproducing test, the bot proposes it as a comment in the PR. We deployed the bot in three open-source repositories for three months, gathering data from 32 PRs-issue pairs. BLAST generated an issue-reproducing test in 11 of these cases, which we proposed to the developers. By analyzing the developers' feedback, we discuss challenges and opportunities for researchers and tool builders. Data and material: https://doi.org/10.5281/zenodo.16949042
- Abstract(参考訳): 問題再現テストはバグの多いコードで失敗し、パッチが適用されればパスする。
しかし、過去の調査では、開発者はそのようなテストなしでパッチをコミットすることがしばしばあり、自動でイシュー再現テストを生成することには関心がある。
LLMと検索ベースソフトウェアテスト(SBST)を組み合わせることで,問題パッチペアから問題再現テストを自動的に生成するツールBLASTを提案する。
LLMでは、git履歴分析、静的解析、SBST生成テストを通じて関連するコンテキストを抽出し、問題記述とパッチを補完する。
問題記述とパッチは、中間LLM生成シードを介してSBST最適化に供給され、SBST互換形式にデシリアライズされる。
BLASTは、キュレートされたPythonベンチマークから151/426(35.4%)のイシュー再現テストを生成し、最先端(23.5%)を上回った。
さらに、BLASTの実際の影響を測定するために、問題にリンクされた新しいプルリクエスト(PR)がオープンされた時にBLASTを実行するGitHubボットを構築しました。
私たちはこのボットを3ヶ月間、3つのオープンソースリポジトリにデプロイし、32のPRと発行されたペアからデータを収集しました。
BLASTは11のケースでイシュー再現テストを生成し、開発者に対して提案した。
開発者のフィードバックを分析して、研究者やツールビルダーにとっての課題と機会について議論する。
データと資料:https://doi.org/10.5281/zenodo.16949042
関連論文リスト
- UTBoost: Rigorous Evaluation of Coding Agents on SWE-Bench [8.00058513405915]
LLM駆動のテストケースジェネレータであるUTGeneratorを導入し、実世界のPythonプロジェクトのテストケースを生成する。
UTGenerator上に構築されたUTBoostは、テストケース拡張のための包括的なフレームワークである。
評価では,テストケースが不十分な36のタスクインスタンスを同定し,元のSWE Benchに渡された345の誤ったパッチを誤ってラベル付けした。
論文 参考訳(メタデータ) (2025-06-10T22:56:49Z) - SwingArena: Competitive Programming Arena for Long-context GitHub Issue Solving [90.32201622392137]
We present SwingArena, a competitive evaluation framework for Large Language Models (LLMs)。
従来の静的ベンチマークとは異なり、SwingArenaはLLMをイテレーションとして組み合わせて、テストケースを作成し、継続的インテグレーション(CI)パイプラインを通じてパッチを検証するパッチとレビュアーを生成することで、ソフトウェアのコラボレーションプロセスをモデル化する。
論文 参考訳(メタデータ) (2025-05-29T18:28:02Z) - Issue2Test: Generating Reproducing Test Cases from Issue Reports [21.28421180698285]
問題を解決するための重要なステップは、問題を正確に再現するテストケースを作成することです。
本稿では,所与の課題報告に対する再生テストケースを自動生成するLLMベースの手法である Issue2Test を提案する。
SWT-bench-lite データセット上での Issue2Test の評価を行い,30.4 の問題を再現した。
論文 参考訳(メタデータ) (2025-03-20T16:44:00Z) - Learning to Generate Unit Tests for Automated Debugging [52.63217175637201]
ユニットテスト(UT)は、コードの正確性を評価するだけでなく、大きな言語モデル(LLM)にフィードバックを提供する上でも重要な役割を果たします。
提案するUTGenは,LLMに対して,予測出力とともにエラーを示す単体テスト入力を生成することを教える。
UTGen は他の LLM ベースラインを7.59% 上回っていることを示す。
論文 参考訳(メタデータ) (2025-02-03T18:51:43Z) - LlamaRestTest: Effective REST API Testing with Small Language Models [50.058600784556816]
LlamaRestTestは、2つのLLM(Large Language Models)を使って現実的なテストインプットを生成する新しいアプローチである。
私たちは、GPTを使った仕様強化ツールであるRESTGPTなど、最先端のREST APIテストツールに対して、これを評価しています。
私たちの研究は、REST APIテストにおいて、小さな言語モデルは、大きな言語モデルと同様に、あるいは、より良く機能することができることを示しています。
論文 参考訳(メタデータ) (2025-01-15T05:51:20Z) - TestART: Improving LLM-based Unit Testing via Co-evolution of Automated Generation and Repair Iteration [7.509927117191286]
大規模言語モデル(LLM)は、単体テストケースを生成する際、顕著な能力を示した。
本研究では,新しい単体テスト生成法であるTestARTを提案する。
TestARTは、自動生成と修復の反復の共進化を通じて、LLMベースのユニットテストを改善している。
論文 参考訳(メタデータ) (2024-08-06T10:52:41Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。