論文の概要: Agentic Property-Based Testing: Finding Bugs Across the Python Ecosystem
- arxiv url: http://arxiv.org/abs/2510.09907v1
- Date: Fri, 10 Oct 2025 22:43:54 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-10-14 18:06:29.685563
- Title: Agentic Property-Based Testing: Finding Bugs Across the Python Ecosystem
- Title(参考訳): Agentic Property-based Testing: Pythonエコシステム全体でバグを見つける
- Authors: Muhammad Maaz, Liam DeVoe, Zac Hatfield-Dodds, Nicholas Carlini,
- Abstract要約: プロパティベースのテスト(PBT)は、ランダム化テストフレームワークとして実装される軽量な形式的手法である。
本研究では,Pythonモジュールを解析し,コードやドキュメントから関数固有およびクロスファンクショナルプロパティを推論し,PBTを合成・実行するLLMベースのエージェントを実演する。
- 参考スコア(独自算出の注目度): 34.68658860352019
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Property-based testing (PBT) is a lightweight formal method, typically implemented as a randomized testing framework. Users specify the input domain for their test using combinators supplied by the PBT framework, and the expected properties or invariants as a unit-test function. The framework then searches for a counterexample, e.g. by generating inputs and calling the test function. In this work, we demonstrate an LLM-based agent which analyzes Python modules, infers function-specific and cross-function properties from code and documentation, synthesizes and executes PBTs, reflects on outputs of these tests to confirm true bugs, and finally outputs actionable bug reports for the developer. We perform an extensive evaluation of our agent across 100 popular Python packages. Of the bug reports generated by the agent, we found after manual review that 56\% were valid bugs and 32\% were valid bugs that we would report to maintainers. We then developed a ranking rubric to surface high-priority valid bugs to developers, and found that of the 21 top-scoring bugs, 86\% were valid and 81\% we would report. The bugs span diverse failure modes from serialization failures to numerical precision errors to flawed cache implementations. We reported 5 bugs, 4 with patches, including to NumPy and cloud computing SDKs, with 3 patches merged successfully. Our results suggest that LLMs with PBT provides a rigorous and scalable method for autonomously testing software. Our code and artifacts are available at: https://github.com/mmaaz-git/agentic-pbt.
- Abstract(参考訳): プロパティベースのテスト(PBT)は、ランダム化テストフレームワークとして実装される軽量な形式的手法である。
PBTフレームワークが供給するコンビネータを使用して、テスト用の入力ドメインを指定し、期待される特性や不変性を単体テスト関数として指定する。
するとフレームワークは、例えば入力を生成してテスト関数を呼び出すことで、逆例を検索する。
本研究では,Pythonモジュールを解析し,コードやドキュメントから関数固有およびクロスファンクショナルプロパティを推論し,PBTを合成,実行し,これらのテストの出力を反映して真のバグを確認し,最終的に動作可能なバグレポートを開発者に対して出力するLLMベースのエージェントを実演する。
100の人気のあるPythonパッケージにまたがってエージェントを広範囲に評価します。
エージェントが生成したバグレポートの中で、手動でレビューした結果、56\%が有効なバグであり、32\%が有効なバグであり、メンテナに報告することを発見した。
その後、開発者に対して優先度の高い有効なバグを提示するランク付けルーブリックを開発し、上位21のバグのうち86%が有効で81パーセントが報告できることがわかった。
バグは、シリアライズ失敗から数値精度エラー、欠陥のあるキャッシュ実装まで、さまざまな障害モードにまたがっている。
NumPyやクラウドコンピューティングSDKなど,5つのバグと4つのパッチを報告しました。
以上の結果から,PLTを用いたLCMは,ソフトウェアを自律的にテストするための厳密でスケーラブルな手法である可能性が示唆された。
私たちのコードとアーティファクトは、https://github.com/mmaaz-git/agentic-pbt.comで利用可能です。
関連論文リスト
- Where LLM Agents Fail and How They can Learn From Failures [62.196870049524364]
大規模言語モデル(LLM)エージェントは、複雑なマルチステップタスクの解決において有望であることを示す。
単一ルート原因エラーがその後の決定を通じて伝播する、障害のカスケードに対する脆弱性を増幅する。
現在のシステムは、モジュール的で体系的な方法でエージェントエラーを包括的に理解できるフレームワークを欠いている。
AgentErrorTaxonomyは、メモリ、リフレクション、計画、アクション、システムレベルの操作にまたがる障害モードのモジュール分類である。
論文 参考訳(メタデータ) (2025-09-29T18:20:27Z) - May the Feedback Be with You! Unlocking the Power of Feedback-Driven Deep Learning Framework Fuzzing via LLMs [20.03968975178177]
ファズテスト(ファズテスト、fuzzing)は、ディープラーニング(DL)フレームワークのバグを見つけるための、シンプルで効果的な方法である。
本稿では,LLM(Large Language Model)とLLM(Generation LLM)という2つの大言語モデル(LLM)からなるフィードバック情報を効果的に活用するFUELを提案する。
FUELはPyTorchのラインコードカバレッジを改善し、最先端のベースラインよりも9.15%、14.70%向上できることを示す。
論文 参考訳(メタデータ) (2025-06-21T08:51:53Z) - Can LLM Generate Regression Tests for Software Commits? [15.653758694625854]
大規模言語モデル(LLM)は、自動化されたソフトウェア工学において非常に有望であることを示している。
フィードバック指向のゼロショットLCMに基づく回帰テスト生成技術であるCleverestを実装した。
XMLやJavaScriptのようなより可読なファイルフォーマットを使用するプログラムでは、Cleverestは非常によく機能した。
論文 参考訳(メタデータ) (2025-01-19T15:46:26Z) - 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) - Evaluating Agent-based Program Repair at Google [9.62742759337993]
エージェントベースのプログラム修復は、複雑なバグをエンドツーエンドで自動的に解決する。
最近の研究は、人気のあるオープンソースSWE-Benchにおけるエージェントベースの修復アプローチの使用について検討している。
本稿では,企業コンテキストにおけるバグに対処するためのエージェント的アプローチの適用可能性について検討する。
論文 参考訳(メタデータ) (2025-01-13T18:09:25Z) - PyPulse: A Python Library for Biosignal Imputation [58.35269251730328]
PyPulseは,臨床およびウェアラブルの両方のセンサ設定において生体信号の計算を行うPythonパッケージである。
PyPulseのフレームワークは、非機械学習バイオリサーバーを含む幅広いユーザーベースに対して、使い勝手の良いモジュラーで拡張可能なフレームワークを提供する。
PyPulseはMITライセンスでGithubとPyPIでリリースしました。
論文 参考訳(メタデータ) (2024-12-09T11:00:55Z) - GPT-HateCheck: Can LLMs Write Better Functional Tests for Hate Speech Detection? [50.53312866647302]
HateCheckは、合成データに対してきめ細かいモデル機能をテストするスイートである。
GPT-HateCheckは,スクラッチからより多彩で現実的な機能テストを生成するフレームワークである。
クラウドソースのアノテーションは、生成されたテストケースが高品質であることを示しています。
論文 参考訳(メタデータ) (2024-02-23T10:02:01Z) - 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) - DeepDebug: Fixing Python Bugs Using Stack Traces, Backtranslation, and
Code Skeletons [5.564793925574796]
本稿では,大規模な事前学習型トランスを用いた自動デバッグ手法を提案する。
まず、合成バグを生成するために、逆コミットデータにバグ生成モデルをトレーニングすることから始めます。
次に、テストを実行できる10Kリポジトリに焦点を当て、テストをパスすることでカバーされるすべての関数のバグの多いバージョンを作成します。
論文 参考訳(メタデータ) (2021-05-19T18:40:16Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。