論文の概要: Using Large Language Models to Generate JUnit Tests: An Empirical Study
- arxiv url: http://arxiv.org/abs/2305.00418v4
- Date: Sat, 9 Mar 2024 00:59:18 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-13 17:41:55.663234
- Title: Using Large Language Models to Generate JUnit Tests: An Empirical Study
- Title(参考訳): 大規模な言語モデルを使ってJUnitテストを生成する:実証的研究
- Authors: Mohammed Latif Siddiq, Joanna C. S. Santos, Ridwanul Hasan Tanvir,
Noshin Ulfat, Fahmid Al Rifat, Vinicius Carvalho Lopes
- Abstract要約: コード生成モデルは、コードコメント、既存のコード、または両方の組み合わせからプロンプトを受け取り、コードを生成する。
我々は,3つのモデル (Codex, GPT-3.5-Turbo, StarCoder) がどの程度単体テストを生成するかを検討した。
CodexモデルはHumanEvalデータセットの80%以上のカバレッジを達成したが、EvoSuite SF110ベンチマークの2%以上のカバレッジを持つモデルはない。
- 参考スコア(独自算出の注目度): 0.4788487793976782
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: A code generation model generates code by taking a prompt from a code
comment, existing code, or a combination of both. Although code generation
models (e.g., GitHub Copilot) are increasingly being adopted in practice, it is
unclear whether they can successfully be used for unit test generation without
fine-tuning for a strongly typed language like Java. To fill this gap, we
investigated how well three models (Codex, GPT-3.5-Turbo, and StarCoder) can
generate unit tests. We used two benchmarks (HumanEval and Evosuite SF110) to
investigate the effect of context generation on the unit test generation
process. We evaluated the models based on compilation rates, test correctness,
test coverage, and test smells. We found that the Codex model achieved above
80% coverage for the HumanEval dataset, but no model had more than 2% coverage
for the EvoSuite SF110 benchmark. The generated tests also suffered from test
smells, such as Duplicated Asserts and Empty Tests.
- Abstract(参考訳): コード生成モデルは、コードコメント、既存のコード、または両方の組み合わせからプロンプトを受け取り、コードを生成する。
コード生成モデル(GitHub Copilotなど)が実際に採用されているが、Javaのような強く型付けされた言語を微調整することなく、ユニットテスト生成にうまく使えるかどうかは不明だ。
このギャップを埋めるために,我々は3つのモデル(Codex, GPT-3.5-Turbo, StarCoder)がどの程度単体テストを生成するかを検討した。
HumanEval と Evosuite SF110 の2つのベンチマークを用いて、コンテキスト生成が単体テスト生成プロセスに与える影響を調べた。
モデルのコンパイル率,テストの正確性,テストカバレッジ,テストの臭いなどに基づいて評価した。
CodexモデルはHumanEvalデータセットの80%以上のカバレッジを達成したが、EvoSuite SF110ベンチマークの2%以上のカバレッジを持つモデルはない。
生成されたテストは、Duplicated AssertsやEmpty Testsといったテストの臭いにも悩まされた。
関連論文リスト
- TestGenEval: A Real World Unit Test Generation and Test Completion Benchmark [24.14654309612826]
TestGenEvalは、1,210のコードから68,647のテストと、11の保守されたPythonリポジトリにまたがるテストファイルペアで構成されている。
初期テストのオーサリング、テストスイートの補完、コードカバレッジの改善をカバーしている。
パラメータは7Bから405Bまで様々である。
論文 参考訳(メタデータ) (2024-10-01T14:47:05Z) - CasModaTest: A Cascaded and Model-agnostic Self-directed Framework for Unit Test Generation [5.450831103980871]
CasModaTestは、カスケードされた、モデルに依存しない、エンドツーエンドのユニットテスト生成フレームワークである。
テストプレフィックスを生成し、オークルをテストし、それらの有効性をチェックするためにコンパイルまたは実行します。
論文 参考訳(メタデータ) (2024-06-22T05:52:39Z) - GPT-HateCheck: Can LLMs Write Better Functional Tests for Hate Speech Detection? [50.53312866647302]
HateCheckは、合成データに対してきめ細かいモデル機能をテストするスイートである。
GPT-HateCheckは,スクラッチからより多彩で現実的な機能テストを生成するフレームワークである。
クラウドソースのアノテーションは、生成されたテストケースが高品質であることを示しています。
論文 参考訳(メタデータ) (2024-02-23T10:02:01Z) - Observation-based unit test generation at Meta [52.4716552057909]
TestGenは、アプリケーション実行中に観察された複雑なオブジェクトのシリアライズされた観察から作られたユニットテストを自動的に生成する。
TestGenは518のテストを本番環境に投入し、継続的統合で9,617,349回実行され、5,702の障害が見つかった。
評価の結果,信頼性の高い4,361のエンドツーエンドテストから,少なくとも86%のクラスでテストを生成することができた。
論文 参考訳(メタデータ) (2024-02-09T00:34:39Z) - PyTester: Deep Reinforcement Learning for Text-to-Testcase Generation [20.441921569948562]
テスト駆動開発(TDD)は、実際のコードを書く前に要件に基づいてテストケースを書くことを義務付ける。
テストケースを書くことはTDDの中心ですが、時間がかかり、コストがかかり、開発者が悩まされることも少なくありません。
PyTesterは、テキストからテストケースを生成するアプローチで、正しい、実行可能な、完全な、効果的なテストケースを自動的に生成します。
論文 参考訳(メタデータ) (2024-01-15T10:21:58Z) - TestSpark: IntelliJ IDEA's Ultimate Test Generation Companion [15.13443954421825]
本稿では,IntelliJ IDEA用のプラグインであるTestSparkを紹介する。
TestSparkは、生成された各テストを容易に修正して実行し、それらをプロジェクトワークフローに統合することを可能にする。
論文 参考訳(メタデータ) (2024-01-12T13:53:57Z) - REST: Retrieval-Based Speculative Decoding [69.06115086237207]
本稿では,言語モデル生成の高速化を目的とした新しいアルゴリズムであるRetrieval-Based Speculative Decoding(REST)を紹介する。
投機的復号化のためのドラフト言語モデルに依存する従来の方法とは異なり、RESTは検索の力を利用してドラフトトークンを生成する。
単一バッチ環境で7Bと13Bの言語モデルでベンチマークすると、RESTはコードやテキスト生成において1.62Xから2.36Xの大幅なスピードアップを達成する。
論文 参考訳(メタデータ) (2023-11-14T15:43:47Z) - CAT-LM: Training Language Models on Aligned Code And Tests [19.526181671936243]
テストはソフトウェア開発プロセスにおいて不可欠な部分だ。しかし、テストを書くのに時間がかかり、しばしば無視される。
我々は270億のパラメータを持つGPTスタイルの言語モデルであるAligned Code And Tests Language Model (CAT-LM)を提案する。
論文 参考訳(メタデータ) (2023-10-02T19:52:22Z) - CodeExp: Explanatory Code Document Generation [94.43677536210465]
既存のコード・トゥ・テキスト生成モデルは、コードの高レベルな要約のみを生成する。
我々は、コードのための高品質な説明記述の基準を特定するために、人間の研究を行う。
タスクのための多段階微調整戦略とベースラインモデルを提案する。
論文 参考訳(メタデータ) (2022-11-25T18:05:44Z) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z) - InCoder: A Generative Model for Code Infilling and Synthesis [88.46061996766348]
InCoderは、プログラム合成(左から右への生成)と編集(埋め込み)が可能な統合生成モデルである。
InCoderは、許可されたコードの大きなコーパスからコードファイルを生成するように訓練されている。
私たちのモデルは、ゼロショットコードの埋め込みを直接実行できる最初の生成モデルです。
論文 参考訳(メタデータ) (2022-04-12T16:25:26Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。