論文の概要: 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に優れていた。
関連論文リスト
- VALTEST: Automated Validation of Language Model Generated Test Cases [0.7059472280274008]
大規模言語モデル(LLM)は、ソフトウェアテストの自動化、特に単体テストケースの生成において大きな可能性を証明している。
本稿では,トークンの確率を利用してLLMが生成したテストケースを自動的に検証する新しいフレームワークVALTESTを紹介する。
論文 参考訳(メタデータ) (2024-11-13T00:07:32Z) - Do LLMs generate test oracles that capture the actual or the expected program behaviour? [7.772338538073763]
大きな言語モデル(LLM)は、開発者のようなコードやテストケースを生成するために、膨大な量のデータに基づいて訓練されています。
この調査には、開発者によって書かれ、自動生成されるテストケースと、24のオープンソースJavaリポジトリのオーラクルが含まれている。
LLMは正しいオーラクルを分類するよりもテストオーラクルを生成する方が優れており、コードが有意義なテスト名や変数名を含む場合、よりよいテストオーラクルを生成することができる。
論文 参考訳(メタデータ) (2024-10-28T15:37:06Z) - SYNTHEVAL: Hybrid Behavioral Testing of NLP Models with Synthetic CheckLists [59.08999823652293]
我々は,NLPモデルの包括的評価のために,SyntheVALを提案する。
最後の段階では、人間の専門家が困難な例を調査し、手動でテンプレートを設計し、タスク固有のモデルが一貫して示す障害の種類を特定します。
我々は、感情分析と有害言語検出という2つの分類課題にSynTHEVALを適用し、これらの課題における強力なモデルの弱点を特定するのに、我々のフレームワークが有効であることを示す。
論文 参考訳(メタデータ) (2024-08-30T17:41:30Z) - Improving LLM-based Unit test generation via Template-based Repair [8.22619177301814]
単体テストは個々のプログラムユニットのバグを検出するのに不可欠だが、時間と労力を消費する。
大規模言語モデル(LLM)は、顕著な推論と生成能力を示している。
本稿では,新しい単体テスト生成法であるTestARTを提案する。
論文 参考訳(メタデータ) (2024-08-06T10:52:41Z) - Test Oracle Automation in the era of LLMs [52.69509240442899]
大規模言語モデル(LLM)は、多様なソフトウェアテストタスクに取り組むのに顕著な能力を示した。
本研究の目的は, 各種のオラクル生成時に生じる課題とともに, LLMs によるオラクルの自動化の可能性について検討することである。
論文 参考訳(メタデータ) (2024-05-21T13:19:10Z) - 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) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。