論文の概要: ASTER: Natural and Multi-language Unit Test Generation with LLMs
- arxiv url: http://arxiv.org/abs/2409.03093v3
- Date: Wed, 15 Jan 2025 13:46:19 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-16 15:50:48.931041
- Title: ASTER: Natural and Multi-language Unit Test Generation with LLMs
- Title(参考訳): ASTER: LLMを使った自然言語および多言語単体テスト生成
- Authors: Rangeet Pan, Myeongsoo Kim, Rahul Krishna, Raju Pavuluri, Saurabh Sinha,
- Abstract要約: 静的解析を組み込んだジェネリックパイプラインを記述し,コンパイル可能な高カバレッジテストケースの生成においてLCMをガイドする。
コードカバレッジとテスト自然性の観点から,生成したテストの品質を評価するための実証的研究を行った。
- 参考スコア(独自算出の注目度): 6.259245181881262
- License:
- Abstract: Implementing automated unit tests is an important but time-consuming activity in software development. To assist developers in this task, many techniques for automating unit test generation have been developed. However, despite this effort, usable tools exist for very few programming languages. Moreover, studies have found that automatically generated tests suffer poor readability and do not resemble developer-written tests. In this work, we present a rigorous investigation of how large language models (LLMs) can help bridge the gap. We describe a generic pipeline that incorporates static analysis to guide LLMs in generating compilable and high-coverage test cases. We illustrate how the pipeline can be applied to different programming languages, specifically Java and Python, and to complex software requiring environment mocking. We conducted an empirical study to assess the quality of the generated tests in terms of code coverage and test naturalness -- evaluating them on standard as well as enterprise Java applications and a large Python benchmark. Our results demonstrate that LLM-based test generation, when guided by static analysis, can be competitive with, and even outperform, state-of-the-art test-generation techniques in coverage achieved while also producing considerably more natural test cases that developers find easy to understand. We also present the results of a user study, conducted with 161 professional developers, that highlights the naturalness characteristics of the tests generated by our approach.
- Abstract(参考訳): 自動化された単体テストを実装することは、ソフトウェア開発において重要であるが時間を要する活動である。
このタスクで開発者を支援するため、ユニットテスト生成を自動化する技術が数多く開発されている。
しかし、この努力にもかかわらず、非常に少数のプログラミング言語で使えるツールが存在する。
さらに、自動生成されたテストは可読性が悪く、開発者が書いたテストに似ていないことが研究で判明した。
本研究では,大きな言語モデル (LLM) がギャップを埋める上でどのように役立つか,厳密な調査を行う。
静的解析を組み込んだジェネリックパイプラインを記述し,コンパイル可能な高カバレッジテストケースの生成においてLCMをガイドする。
パイプラインをさまざまなプログラミング言語、特にJavaとPython、そして環境モックを必要とする複雑なソフトウェアに適用する方法を説明します。
我々は、コードカバレッジとテストの自然性の観点から生成されたテストの品質を評価するための実証的研究を行い、それらをエンタープライズJavaアプリケーションや大規模なPythonベンチマークと同様に標準で評価した。
以上の結果から,静的解析によって導かれるLCMベースのテスト生成は,開発者が容易に理解できるような,より自然なテストケースを生成するとともに,適用範囲における最先端のテスト生成技術と競合し,さらに優れる可能性が示唆された。
また,161人のプロ開発者が実施したユーザスタディの結果を報告する。
関連論文リスト
- ProjectTest: A Project-level LLM Unit Test Generation Benchmark and Impact of Error Fixing Mechanisms [48.43237545197775]
単体テスト生成はLLMの有望かつ重要なユースケースとなっている。
ProjectTestは、Python、Java、JavaScriptをカバーするユニットテスト生成のためのプロジェクトレベルのベンチマークである。
論文 参考訳(メタデータ) (2025-02-10T15:24:30Z) - Improving the Readability of Automatically Generated Tests using Large Language Models [7.7149881834358345]
探索型ジェネレータの有効性とLLM生成試験の可読性を組み合わせることを提案する。
提案手法は,検索ツールが生成するテスト名や変数名の改善に重点を置いている。
論文 参考訳(メタデータ) (2024-12-25T09:08:53Z) - LMUnit: Fine-grained Evaluation with Natural Language Unit Tests [43.096722878672956]
応答品質を明示的でテスト可能な基準に分解するパラダイムである自然言語単体テストを導入する。
このパラダイムは、アノテーション間の合意を大幅に改善し、より効果的な開発を可能にする。
LMUnitは、評価ベンチマークとRewardBenchの競争結果で最先端のパフォーマンスを達成する。
論文 参考訳(メタデータ) (2024-12-17T17:01:15Z) - Commit0: Library Generation from Scratch [77.38414688148006]
Commit0は、AIエージェントにスクラッチからライブラリを書くよう促すベンチマークである。
エージェントには、ライブラリのAPIを概説する仕様文書と、インタラクティブなユニットテストスイートが提供されている。
Commit0はまた、モデルが生成したコードに対して静的解析と実行フィードバックを受け取る、インタラクティブな環境も提供する。
論文 参考訳(メタデータ) (2024-12-02T18:11:30Z) - A System for Automated Unit Test Generation Using Large Language Models and Assessment of Generated Test Suites [1.4563527353943984]
大規模言語モデル(LLM)はソフトウェア開発の様々な側面に適用されている。
Javaプロジェクトのテストスイートを生成する自動化システムであるAgoneTestを紹介します。
論文 参考訳(メタデータ) (2024-08-14T23:02:16Z) - Harnessing the Power of LLMs: Automating Unit Test Generation for High-Performance Computing [7.3166218350585135]
ユニットテストは、品質を保証するために、ソフトウェア工学において不可欠です。
並列処理や高性能計算ソフトウェア、特に科学応用では広く使われていない。
本稿では,このようなソフトウェアを対象としたユニットテストの自動生成手法を提案する。
論文 参考訳(メタデータ) (2024-07-06T22:45:55Z) - Automatic benchmarking of large multimodal models via iterative experiment programming [71.78089106671581]
本稿では,LMMの自動ベンチマークのための最初のフレームワークであるAPExを紹介する。
自然言語で表現された研究の質問に対して、APExは大きな言語モデル(LLM)と事前定義されたツールのライブラリを活用して、手元にあるモデルの一連の実験を生成する。
調査の現在の状況に基づいて、APExはどの実験を行うか、結果が結論を引き出すのに十分かどうかを選択する。
論文 参考訳(メタデータ) (2024-06-18T06:43:46Z) - TESTEVAL: Benchmarking Large Language Models for Test Case Generation [15.343859279282848]
大規模言語モデル(LLM)を用いたテストケース生成のための新しいベンチマークであるTESTEVALを提案する。
オンラインプログラミングプラットフォームLeetCodeから210のPythonプログラムを収集し、全体的なカバレッジ、ターゲットライン/ブランチカバレッジ、ターゲットパスカバレッジという3つの異なるタスクを設計します。
特定のプログラム行/ブランチ/パスをカバーするテストケースを生成することは、現在のLLMでは依然として困難である。
論文 参考訳(メタデータ) (2024-06-06T22:07:50Z) - Large Language Models as Test Case Generators: Performance Evaluation and Enhancement [3.5398126682962587]
大規模言語モデルが高品質なテストケースをいかに生み出すかを検討する。
本稿では,テストインプットとテストアウトプットの生成を分離するemphTestChainというマルチエージェントフレームワークを提案する。
以上の結果から,TestChainはベースラインのマージンを大きく上回っていることが示唆された。
論文 参考訳(メタデータ) (2024-04-20T10:27:01Z) - Generative Judge for Evaluating Alignment [84.09815387884753]
本稿では,これらの課題に対処するために,13Bパラメータを持つ生成判断器Auto-Jを提案する。
我々のモデルは,大規模な実環境シナリオ下でのユーザクエリとLLM生成応答に基づいて訓練されている。
実験的に、Auto-Jはオープンソースモデルとクローズドソースモデルの両方を含む、強力なライバルのシリーズを上回っている。
論文 参考訳(メタデータ) (2023-10-09T07:27:15Z) - Towards Automatic Generation of Amplified Regression Test Oracles [44.45138073080198]
回帰テストオラクルを増幅するためのテストオラクル導出手法を提案する。
このアプローチはテスト実行中にオブジェクトの状態を監視し、以前のバージョンと比較して、SUTの意図した振る舞いに関連する変更を検出する。
論文 参考訳(メタデータ) (2023-07-28T12:38:44Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。