論文の概要: DiffTestGen: Change-Directed LLM-Based Testing for Exposing Behavioral Differences
- arxiv url: http://arxiv.org/abs/2607.16024v1
- Date: Fri, 17 Jul 2026 14:57:59 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-07-20 17:56:52.878522
- Title: DiffTestGen: Change-Directed LLM-Based Testing for Exposing Behavioral Differences
- Title(参考訳): DiffTestGen: 振る舞いの違いを抽出するための変更指向LLMベースのテスト
- Abstract要約: 本稿では,LLMに基づく差分テスト手法であるDiffTestGenを提案する。
DiffTestGenは、PRの78.2%で行動の違いを露呈し、平均で90.7%のユニオンカバレッジを達成した。
DiffTestGenとTestoraレグレッション検出器を統合することで、既存の最良のアプローチで見逃された回帰バグを検出するために、識別された振る舞いの違いが利用できることを示す。
- 参考スコア(独自算出の注目度): 12.692695524978332
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: As software evolves over time, it is important to ensure that any behavioral changes occur as intended by developers. A promising approach for this goal is to generate tests that expose behavioral differences between the old and new versions of a program. However, current approaches fail to trigger behavioral differences for many code changes. This paper presents~DiffTestGen, a novel change-directed, LLM-based differential testing approach specifically designed to expose behavioral differences introduced by a code change. The approach is enabled by two key contributions: First, DiffTestGen leverages static call graph analysis and project documentation to identify valid entry points for test generation and to guide the LLM toward reaching the changed code. Second, DiffTestGen iteratively improves our newly introduced union coverage metric, which combines coverage of modified code in the old and the new version, by providing targeted coverage feedback to the LLM. We evaluate DiffTestGen on two datasets comprising a total of 463 PRs. DiffTestGen exposes behavioral differences in 78.2% of the PRs while achieving an average union coverage of 90.7%. Compared with the baselines, DiffTestGen exposes 99 more PRs overall and increases code coverage by 12.5% and 15.6% percentage points, respectively. By integrating DiffTestGen with the Testora regression detector, we show that the identified behavioral differences can be used to detect regression bugs missed by the best existing approaches.
- Abstract(参考訳): ソフトウェアは時間が経つにつれて進化していくので、開発者が意図した行動の変化が確実に起きることが重要です。
この目標のための有望なアプローチは、プログラムの旧バージョンと新バージョンの振る舞いの違いを明らかにするテストを生成することである。
しかし、現在のアプローチは多くのコードの変更に対して振る舞いの違いを引き起こすことに失敗している。
DiffTestGenは、コード変更によって導入された振る舞いの違いを明らかにするために特別に設計された、新しい変更指向のLLMベースの差分テストアプローチである。
まず、DiffTestGenは静的なコールグラフ分析とプロジェクトドキュメントを活用して、テスト生成の有効なエントリポイントを特定し、LLMを変更コードに到達するためのガイドします。
次に、DiffTestGenは、LLMにターゲットカバレッジフィードバックを提供することで、旧バージョンと新バージョンの修正コードのカバレッジを組み合わせた、新しく導入されたユニオンカバレッジメトリックを反復的に改善します。
合計433個のPRからなる2つのデータセット上でDiffTestGenを評価した。
DiffTestGenは、PRの78.2%の行動の違いを明らかにし、平均で90.7%のユニオンカバレッジを達成した。
ベースラインと比較して、DiffTestGenは全体として99以上のPRを公開し、コードカバレッジをそれぞれ12.5%と15.6%向上させた。
DiffTestGenとTestoraレグレッション検出器を統合することで、既存の最良のアプローチで見逃された回帰バグを検出するために、識別された振る舞いの違いが利用できることを示す。
関連論文リスト
- ExecCritic: Learn to Test, Test to Improve for Coding Agents [68.42713285082912]
実行時のフィードバックは、コーディングエージェントを正しいリポジトリの修復に導くことができますが、テストが問題によって要求された振る舞いをキャプチャした場合のみです。
ExecCriticを導入し、テスト-検証-修正足場と、その中のトレーニングエージェントのためのロール固有の強化学習レシピを組み合わせる。
テストエージェントが独立してリポジトリネイティブなテストを生成し、フェイルクローズされたハーネスがそれらを調整して凍結し、リカバリエージェントがテストを変更することなく、ソースコードを実行フィードバックから修正する。
論文 参考訳(メタデータ) (2026-09-08T17:53:37Z) - Grounding AI Agents in Contracts: An Empirical Evaluation of Spec-Driven Test Generation [4.061618191574875]
仕様駆動テスト生成(Spec-Driven Test Generation)は、エージェントに対して、コード事前条件、事後条件、未定義の振る舞いについて-および明示的に文書化するように指示する。
この中間半形式仕様は、その後のテスト生成を導くための認知的足場として機能する。
論文 参考訳(メタデータ) (2026-08-17T22:36:12Z) - Do Coverage and Mutation Scores of LLM-Generated Test Suites Correlate with Their Effectiveness? (Replicability Study) [6.228248513679207]
研究によると、テストスイートのサイズが制御されると、カバレッジ、突然変異、および実際のバグ検出の相関がほとんどなくなる。
対象と変異の有用性は,文脈依存的であることが示唆された。
また、テストスイートのサイズがカバレッジ、突然変異、実際のバグ検出の相関関係において、主要な共同創設者であるという証拠もほとんどありません。
論文 参考訳(メタデータ) (2026-07-24T19:46:30Z) - SemaDiff: Identifying Semantic-Changing Commits with Generated Code and Tests [5.3138104073306005]
変更点からのセマンティック保存コミットの排除は、ソフトウェアリポジトリのマイニングにおいて、依然としてオープンな課題である。
SemaDiffは、プレコミットとポストコミットバージョンでの同様のテスト実行の比較を通じて、セマンティック保存コミットを特定するための新しいアプローチである。
SemaDiffは、セマンティックな保存と -- 約76%のケースでコミットを変更する -- を正確に区別し、セマンティックなコミット検出の精度は100%である。
論文 参考訳(メタデータ) (2026-07-14T12:23:22Z) - Correct Code, Vulnerable Dependencies: A Large Scale Measurement Study of LLM-Specified Library Versions [52.50730821321986]
大規模言語モデル(LLM)におけるバージョンレベルのリスクの大規模評価を初めて行った。
我々は1000のStack OverflowプログラミングタスクのベンチマークであるPinTrace上で10のLLMを評価した。
LLM バージョン選択は LLM ベース開発における第1級, 以前は見落とされたリスクサーフェスとして確認された。
論文 参考訳(メタデータ) (2026-05-07T13:52:59Z) - Are Benchmark Tests Strong Enough? Mutation-Guided Diagnosis and Augmentation of Regression Suites [49.16055123488827]
十分に強力なテストスイートは、報告された成功率を膨らませながら、妥当だが意味的に正しくないパッチを認めることができる。
STINGは、意味的に変化するプログラムの変種を診断ストレス要因として利用する、ターゲットテスト拡張のためのフレームワークである。
STINGは211インスタンスにまたがる1014の検証テストを生成し、パッチリージョンラインとブランチカバレッジを10.8%、9.5%向上させた。
論文 参考訳(メタデータ) (2026-04-02T01:13:40Z) - Evaluating LLM-Based Test Generation Under Software Evolution [7.140756378584939]
大規模言語モデル(LLM)は、ユニットテストの自動生成にますます使われています。
プログラム変更によるLCMベースのテスト生成に関する大規模な実証的研究について述べる。
論文 参考訳(メタデータ) (2026-03-24T17:14:18Z) - Code-A1: Adversarial Evolving of Code LLM and Test LLM via Reinforcement Learning [54.95476453942411]
コード生成のための強化学習は、単体テストのパスレートから検証可能な報酬に依存する。
最近のセルフプレイ手法は、1つのモデルでコードとテスト生成を統合する。
Code-A1は、人間のアノテーションによるテストでトレーニングされたコード生成のパフォーマンスマッチングまたはモデルを超えることを実現する。
論文 参考訳(メタデータ) (2026-03-16T17:58:13Z) - DoVer: Intervention-Driven Auto Debugging for LLM Multi-Agent Systems [48.971606069204825]
DoVerは、大規模言語モデル(LLM)ベースのマルチエージェントシステムのための介入駆動デバッグフレームワークである。
ターゲットの介入を通じて、アクティブな検証によって仮説生成を増強する。
DoVerは失敗試験の18~28%を成功させ、最大16%のマイルストーンを達成し、失敗仮説の30~60%を検証または否定する。
論文 参考訳(メタデータ) (2025-12-07T09:23:48Z) - RepreGuard: Detecting LLM-Generated Text by Revealing Hidden Representation Patterns [50.401907401444404]
大規模言語モデル(LLM)は、誤用を防止し、信頼できるAIシステムを構築するために不可欠である。
本稿では,統計量に基づく効率的な検出手法であるRepreGuardを提案する。
実験結果から、RepreGuardは、平均94.92%のAUROCですべてのベースラインでID(in-distriion)とOOD(OOD)の両方のシナリオでパフォーマンスが向上していることが示された。
論文 参考訳(メタデータ) (2025-08-18T17:59:15Z) - Testora: Using Natural Language Intent to Detect Behavioral Regressions [16.852583199679117]
本稿では,コード変更の意図とコード変更による振る舞いの違いを比較することで,回帰を検出する最初の自動手法であるTestoraを提案する。
19のレグレッションバグと11のPRがあり、別の意図があるにも関わらず、同時にバグを修正します。
私たちは、コード変更がコードベースにマージされた後、あるいはすぐに使用されるアプローチを想像し、従来のアプローチに縛られていない回帰を早期に検出する方法を提供しています。
論文 参考訳(メタデータ) (2025-03-24T11:55:35Z) - AdaNPC: Exploring Non-Parametric Classifier for Test-Time Adaptation [64.9230895853942]
ドメインの一般化は、ターゲットのドメイン情報を活用することなく、任意に困難にすることができる。
この問題に対処するためにテスト時適応(TTA)手法が提案されている。
本研究では,テスト時間適応(AdaNPC)を行うためにNon-Parametricを採用する。
論文 参考訳(メタデータ) (2023-04-25T04:23:13Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。