論文の概要: Intention-Driven Generation of Project-Specific Test Cases
- arxiv url: http://arxiv.org/abs/2507.20619v1
- Date: Mon, 28 Jul 2025 08:35:04 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-07-29 16:23:57.982106
- Title: Intention-Driven Generation of Project-Specific Test Cases
- Title(参考訳): プロジェクト特有のテストケースの意図駆動生成
- Authors: Binhang Qi, Yun Lin, Xinyi Weng, Yuhuan Huang, Chenyan Liu, Hailong Sun, Jin Song Dong,
- Abstract要約: 本稿では,プロジェクト固有のテストを生成するIntentionTestを構造化記述として提案する。
13のオープンソースプロジェクトから4,146件のテストケースで,最先端のベースラインに対するIntentionTestを評価した。
- 参考スコア(独自算出の注目度): 14.297390481640068
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Test cases are valuable assets for maintaining software quality. While numerous automated techniques have been proposed for generating tests (either by maximizing code coverage or by translating focal code into test code), practical tests are seldom driven by coverage alone. In real projects, each test reflects a developer's validation intention for a specific behaviour and embodies rich, project-specific knowledge: which specific APIs to call and what assertions truly matter. Without considering such knowledge, tests can hardly pass code review and be integrated into the software product. In this work, we propose IntentionTest, which generates project-specific tests with validation intention as a structured description. Our design is motivated by two insights: (1) a description of validation intention, compared to coverage and focal code, carries more crucial information about what to test; and (2) practical tests exhibit high code duplication, indicating that domain knowledge is highly reusable for writing new tests. Given a focal code and a description of validation intention (in the form of either an informal comment or a formal test plan), IntentionTest retrieves a referable test in the project to guide test generation. Moreover, IntentionTest reduces the test generation problem into an editing problem on the test code regarding the validation intention. It generates a test including both test prefix and oracle, which aims to be executable and semantically correct. We evaluate IntentionTest against state-of-the-art baselines on 4,146 test cases from 13 open-source projects. Specifically, compared to ChatTester, IntentionTest can (1) generate significantly more semantically correct tests, improving common mutation scores by 39.03% and coverage overlap with ground-truth tests by 40.14%; (2) generate 21.30% more successful passing tests.
- Abstract(参考訳): テストケースは、ソフトウェア品質を維持する上で価値のある資産です。
テストを生成するための多くの自動化技術(コードカバレッジを最大化したり、フォーカスコードをテストコードに変換するなど)が提案されているが、実際のテストはカバレッジだけで駆動されることはめったにない。
実際のプロジェクトでは、各テストは開発者の特定の振る舞いに対する検証意図を反映し、リッチでプロジェクト固有の知識を具現化します。
このような知識を考慮しない限り、テストはコードレビューをほとんどパスできず、ソフトウェア製品に統合されません。
本研究では,検証意図を構造化記述としてプロジェクト固有のテストを生成するIntentionTestを提案する。
本設計の動機は,(1)カバレッジやフォーカスコードと比較して,検証意図の説明がより重要な情報をもたらすこと,(2)実用的テストは高い重複を示し,ドメイン知識が新たなテストを書く上で極めて有用であること,の2点にある。
フォーカスコードと検証意図の記述(非公式コメントか公式テストプランの形式で)が与えられた後、IntentionTestはプロジェクトの参照可能なテストを取得して、テスト生成をガイドする。
さらに、IntentionTestは、テスト生成問題を検証意図に関するテストコードの編集問題に還元する。
テストプレフィックスとオラクルの両方を含むテストを生成し、実行可能で意味論的に正しいことを目指している。
13のオープンソースプロジェクトから4,146件のテストケースで,最先端のベースラインに対するIntentionTestを評価した。
特にChatTesterと比較して、IntentionTestは(1)より意味論的に正しいテストを生成し、共通突然変異スコアを39.03%改善し、40.14%増加し、(2)21.30%向上したパステストを生成する。
関連論文リスト
- Studying the Impact of Early Test Termination Due to Assertion Failure on Code Coverage and Spectrum-based Fault Localization [48.22524837906857]
本研究は,アサーション障害による早期検査終了に関する最初の実証的研究である。
6つのオープンソースプロジェクトの207バージョンを調査した。
以上の結果から,早期検査終了は,コードカバレッジとスペクトルに基づく障害局所化の有効性の両方を損なうことが示唆された。
論文 参考訳(メタデータ) (2025-04-06T17:14:09Z) - 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) - 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) - Leveraging Large Language Models for Enhancing the Understandability of Generated Unit Tests [4.574205608859157]
我々は,検索ベースのソフトウェアテストと大規模言語モデルを組み合わせたUTGenを導入し,自動生成テストケースの理解性を向上する。
UTGenテストケースで課題に取り組む参加者は、最大33%のバグを修正し、ベースラインテストケースと比較して最大20%の時間を使用できます。
論文 参考訳(メタデータ) (2024-08-21T15:35:34Z) - 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) - Automatic Generation of Test Cases based on Bug Reports: a Feasibility
Study with Large Language Models [4.318319522015101]
既存のアプローチは、単純なテスト(例えば単体テスト)や正確な仕様を必要とするテストケースを生成する。
ほとんどのテスト手順は、テストスイートを形成するために人間が書いたテストケースに依存しています。
大規模言語モデル(LLM)を活用し,バグレポートを入力として利用することにより,この生成の実現可能性を検討する。
論文 参考訳(メタデータ) (2023-10-10T05:30:12Z) - Learning Deep Semantics for Test Completion [46.842174440120196]
テスト完了の新たなタスクを形式化し、テスト対象の文のコンテキストとコードに基づいて、テストメソッドで次のステートメントを自動的に完了する。
テスト補完にコードセマンティクスを用いたディープラーニングモデルであるTeCoを開発した。
論文 参考訳(メタデータ) (2023-02-20T18:53:56Z) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z) - Unit Test Case Generation with Transformers and Focal Context [10.220204860586582]
AthenaTestは、現実世界の焦点メソッドと開発者が記述したテストケースから学習することで、単体テストケースを生成することを目的としている。
我々は,Javaにおける単体テストケースメソッドとそれに対応する焦点メソッドの並列コーパスとして最大規模で公開されているMethods2Testを紹介する。
AthenaTestを5つの欠陥4jプロジェクトで評価し、30回の試行で焦点メソッドの43.7%をカバーする25Kパステストケースを生成した。
論文 参考訳(メタデータ) (2020-09-11T18:57:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。