論文の概要: LLM-Powered Test Case Generation for Detecting Tricky Bugs
- arxiv url: http://arxiv.org/abs/2404.10304v1
- Date: Tue, 16 Apr 2024 06:20:06 GMT
- ステータス: 処理完了
- システム内更新日: 2024-04-17 17:52:48.336027
- Title: LLM-Powered Test Case Generation for Detecting Tricky Bugs
- Title(参考訳): トリッキーバグ検出のためのLCM駆動テストケース生成
- Authors: Kaibo Liu, Yiyang Liu, Zhenpeng Chen, Jie M. Zhang, Yudong Han, Yun Ma, Ge Li, Gang Huang,
- Abstract要約: AIDは、少なくとも正しいプログラムをターゲットにしたテスト入力とオラクルを生成する。
TrickyBugs と EvalPlus の2つの大規模データセットに対する AID の評価を行った。
その結果,AIDのリコール,精度,F1スコアは,それぞれ1.80x,2.65x,1.66xに優れていた。
- 参考スコア(独自算出の注目度): 30.82169191775785
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Conventional automated test generation tools struggle to generate test oracles and tricky bug-revealing test inputs. Large Language Models (LLMs) can be prompted to produce test inputs and oracles for a program directly, but the precision of the tests can be very low for complex scenarios (only 6.3% based on our experiments). To fill this gap, this paper proposes AID, which combines LLMs with differential testing to generate fault-revealing test inputs and oracles targeting plausibly correct programs (i.e., programs that have passed all the existing tests). In particular, AID selects test inputs that yield diverse outputs on a set of program variants generated by LLMs, then constructs the test oracle based on the outputs. We evaluate AID on two large-scale datasets with tricky bugs: TrickyBugs and EvalPlus, and compare it with three state-of-the-art baselines. The evaluation results show that the recall, precision, and F1 score of AID outperform the state-of-the-art by up to 1.80x, 2.65x, and 1.66x, respectively.
- Abstract(参考訳): 従来の自動テスト生成ツールは、テストのオーラクルとトリッキーなバグ修正テストインプットを生成するのに苦労しています。
大規模言語モデル(LLM)は直接プログラムの入力やオラクルを生成するよう促すことができるが、複雑なシナリオではテストの精度は非常に低い(我々の実験ではわずか6.3%)。
このギャップを埋めるために,本論文では,LSMと差分テストを組み合わせて,障害検出テストの入力を生成するAIDと,少なくとも正しいプログラムをターゲットとしたオーラクル(既存のすべてのテストに合格したプログラム)を提案する。
特に AID は LLM が生成するプログラム変種に対して多様な出力を出力するテスト入力を選択し、その出力に基づいてテストオラクルを構成する。
我々は,TickyBugsとEvalPlusの2つの大規模データセット上でAIDを評価し,それを最先端の3つのベースラインと比較した。
その結果,AIDのリコール,精度,F1スコアは,それぞれ1.80x,2.65x,1.66xに優れていた。
関連論文リスト
- Test Oracle Automation in the era of LLMs [52.69509240442899]
大規模言語モデル(LLM)は、多様なソフトウェアテストタスクに取り組むのに顕著な能力を示した。
本研究の目的は, 各種のオラクル生成時に生じる課題とともに, LLMs によるオラクルの自動化の可能性について検討することである。
論文 参考訳(メタデータ) (2024-05-21T13:19:10Z) - Large Language Models as Test Case Generators: Performance Evaluation and Enhancement [3.5398126682962587]
大規模言語モデルが高品質なテストケースをいかに生み出すかを検討する。
本稿では,テストインプットとテストアウトプットの生成を分離するemphTestChainというマルチエージェントフレームワークを提案する。
以上の結果から,TestChainはベースラインのマージンを大きく上回っていることが示唆された。
論文 参考訳(メタデータ) (2024-04-20T10:27:01Z) - Test Generation Strategies for Building Failure Models and Explaining
Spurious Failures [4.995172162560306]
テスト入力は、テスト対象のシステムが故障している場合だけでなく、入力が無効または非現実的である場合も失敗する。
テストインプットに対して解釈可能なルールを推論し,重大な障害を引き起こす障害モデルを構築することを提案する。
提案手法は, 平均精度83%の故障モデルを生成する。
論文 参考訳(メタデータ) (2023-12-09T18:36:15Z) - Test-Time Self-Adaptive Small Language Models for Question Answering [63.91013329169796]
ラベルのないテストデータのみを用いて、より小さな自己適応型LMの能力を示し、検討する。
提案した自己適応戦略は,ベンチマークQAデータセットの大幅な性能向上を示す。
論文 参考訳(メタデータ) (2023-10-20T06:49:32Z) - Effective Test Generation Using Pre-trained Large Language Models and
Mutation Testing [13.743062498008555]
大規模言語モデル(LLM)が生成するテストケースの有効性を,バグの発見の観点から改善するための MuTAP を導入する。
MuTAPは、プログラム・アンダー・テスト(PUT)の自然言語記述がない場合に有効なテストケースを生成することができる
提案手法は, 最大28%の人書きコードスニペットを検出できることを示す。
論文 参考訳(メタデータ) (2023-08-31T08:48:31Z) - ALGO: Synthesizing Algorithmic Programs with LLM-Generated Oracle
Verifiers [60.6418431624873]
大きな言語モデル(LLM)は、機能記述からコードを実装するのに優れているが、アルゴリズムの問題に悩まされている。
我々は,アルゴリズムプログラムを LLM 生成 Oracle で合成するフレームワーク ALGO を提案し,その生成をガイドし,その正確性を検証する。
実験の結果,ALGOを装着すると,Codexモデルよりも8倍,CodeTよりも2.6倍の1サブミッションパス率が得られることがわかった。
論文 参考訳(メタデータ) (2023-05-24T00:10:15Z) - Intergenerational Test Generation for Natural Language Processing
Applications [16.63835131985415]
各種NLPアプリケーションの誤動作を検出する自動テスト生成手法を提案する。
この手法をNLPLegoに実装し、シード文の可能性を完全に活用する。
NLPLegoは3つのタスクで約95.7%の精度で1,732, 5301, 261,879の誤った行動を検出することに成功した。
論文 参考訳(メタデータ) (2023-02-21T07:57:59Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z) - Perfect is the enemy of test oracle [1.457696018869121]
テストのオーラクルは、テストが失敗する(バグを検出する)か通過するかを判断するために、正しい動作とバギーな動作を区別できる地平線に依存しています。
本稿では,テストアサーションが存在しない場合には,テスト対象のメソッド(MUT)で単体テストが通過するか失敗するかを判定できる,学習に基づくSEERを提案する。
さまざまなオープンソースのJavaプロジェクトから5K以上のユニットテストにSEERを適用する実験は、生成したオラクルがフェールやパスラベルを予測するのに有効であることを示している。
論文 参考訳(メタデータ) (2023-02-03T01:49:33Z) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z) - Listen, Adapt, Better WER: Source-free Single-utterance Test-time
Adaptation for Automatic Speech Recognition [65.84978547406753]
Test-time Adaptationは、ソースドメインでトレーニングされたモデルに適応して、テストサンプルの予測を改善することを目的としている。
単一発話テスト時間適応 (SUTA) は音声領域における最初のTTA研究である。
論文 参考訳(メタデータ) (2022-03-27T06:38:39Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。