論文の概要: Efficient Incremental Code Coverage Analysis for Regression Test Suites
- arxiv url: http://arxiv.org/abs/2410.21798v1
- Date: Tue, 29 Oct 2024 07:06:14 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-10-30 13:41:51.808814
- Title: Efficient Incremental Code Coverage Analysis for Regression Test Suites
- Title(参考訳): 回帰テストスイートの効率的なインクリメンタルコードカバレッジ解析
- Authors: Jiale Amber Wang, Kaiyuan Wang, Pengyu Nie,
- Abstract要約: 回帰テスト選択(RTS)技術は、コードの変更によって振る舞いが影響を受ける可能性のあるテストのサブセットを選択するために存在する。
最小限のテストを実行することでコードカバレッジ分析を高速化する,最初のインクリメンタルコードカバレッジ分析手法を提案する。
- 参考スコア(独自算出の注目度): 4.778746969471655
- License:
- Abstract: Code coverage analysis has been widely adopted in the continuous integration of open-source and industry software repositories to monitor the adequacy of regression test suites. However, computing code coverage can be costly, introducing significant overhead during test execution. Plus, re-collecting code coverage for the entire test suite is usually unnecessary when only a part of the coverage data is affected by code changes. While regression test selection (RTS) techniques exist to select a subset of tests whose behaviors may be affected by code changes, they are not compatible with code coverage analysis techniques -- that is, simply executing RTS-selected tests leads to incorrect code coverage results. In this paper, we present the first incremental code coverage analysis technique, which speeds up code coverage analysis by executing a minimal subset of tests to update the coverage data affected by code changes. We implement our technique in a tool dubbed iJaCoCo, which builds on Ekstazi and JaCoCo -- the state-of-the-art RTS and code coverage analysis tools for Java. We evaluate iJaCoCo on 1,122 versions from 22 open-source repositories and show that iJaCoCo can speed up code coverage analysis time by an average of 1.86x and up to 8.20x compared to JaCoCo.
- Abstract(参考訳): コードカバレッジ分析は、回帰テストスイートの妥当性を監視するために、オープンソースおよび業界ソフトウェアリポジトリの継続的インテグレーションで広く採用されている。
しかし、コードカバレッジの計算にはコストがかかり、テスト実行時にかなりのオーバーヘッドが発生する。
さらに、コードの変更によってカバレッジデータの一部だけが影響を受ける場合、テストスイート全体のコードカバレッジを再コンパイルすることは、通常不要である。
回帰テスト選択(RTS)技術は、振る舞いがコードの変更に影響される可能性があるテストのサブセットを選択するために存在するが、コードカバレッジ分析技術とは互換性がない。
本稿では,コード変更に伴うカバレッジデータを更新するために,最小限のテストサブセットを実行することで,コードカバレッジ解析を高速化する最初のインクリメンタルコードカバレッジ解析手法を提案する。
これは、最先端のRTSとJavaのコードカバレッジ分析ツールであるEkstaziとJaCoCoをベースにしています。
我々は、22のオープンソースリポジトリから1,122バージョンのiJaCoCoを評価し、iJaCoCoが平均1.86倍、最大8.20倍のコードカバレッジ解析時間を高速化できることを示した。
関連論文リスト
- Codev-Bench: How Do LLMs Understand Developer-Centric Code Completion? [60.84912551069379]
Code-Development Benchmark (Codev-Bench)は、細粒度で現実世界、リポジトリレベル、開発者中心の評価フレームワークです。
Codev-Agentは、リポジトリのクローリングを自動化し、実行環境を構築し、既存のユニットテストから動的呼び出しチェーンを抽出し、データ漏洩を避けるために新しいテストサンプルを生成するエージェントベースのシステムである。
論文 参考訳(メタデータ) (2024-10-02T09:11:10Z) - 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) - DOCE: Finding the Sweet Spot for Execution-Based Code Generation [69.5305729627198]
本稿では,候補生成,$n$-best再ランク,最小ベイズリスク(MBR)復号化,自己老化などを含む包括的フレームワークを提案する。
本研究は,実行ベースメソッドの重要性と,実行ベースメソッドと実行フリーメソッドとの差を明らかにする。
論文 参考訳(メタデータ) (2024-08-25T07:10:36Z) - CoverUp: Coverage-Guided LLM-Based Test Generation [0.7673339435080445]
CoverUpは、ハイカバレッジPython回帰テストを生成するための新しいアプローチである。
CoverUpの反復的なカバレッジ誘導アプローチは、その有効性に不可欠であることを示す。
論文 参考訳(メタデータ) (2024-03-24T16:18:27Z) - StepCoder: Improve Code Generation with Reinforcement Learning from
Compiler Feedback [58.20547418182074]
2つの主要コンポーネントからなるコード生成の新しいフレームワークであるStepCoderを紹介します。
CCCSは、長いシーケンスのコード生成タスクをCurriculum of Code Completion Subtaskに分割することで、探索課題に対処する。
FGOは、未実行のコードセグメントをマスクすることでのみモデルを最適化し、Fine-Grained Optimizationを提供する。
提案手法は,出力空間を探索し,対応するベンチマークにおいて最先端の手法より優れた性能を発揮する。
論文 参考訳(メタデータ) (2024-02-02T13:14:31Z) - Predicting Code Coverage without Execution [8.611200125985887]
コードカバレッジは、テスト中にステートメントやブランチなどのプログラム要素が実行される範囲を定量化するために広く使用されるメトリクスである。
本稿では,Large Language Models (LLM) のためのコードカバレッジ予測という新しいベンチマークタスクを提案する。
このタスクを形式化し、与えられたテストケースと入力によってメソッドのどの行が実行されるかを決定することで、コード実行のLLMの能力を評価する。
OpenAI の GPT-4 や GPT-3.5-Turbo, Google の BARD, An など,コード関連タスクに使用されている4つの最先端 LLM の性能について報告する。
論文 参考訳(メタデータ) (2023-07-25T10:07:02Z) - RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation [96.75695811963242]
RepoCoderはリポジトリレベルのコード補完プロセスを合理化するフレームワークである。
類似性ベースのレトリバーと、事前訓練されたコード言語モデルが組み込まれている。
バニラ検索で拡張されたコード補完アプローチよりも一貫して優れています。
論文 参考訳(メタデータ) (2023-03-22T13:54:46Z) - Evaluating Search-Based Software Microbenchmark Prioritization [6.173678645884399]
本稿では,単目的と多目的の探索に基づくマイクロベンチマーク優先順位付け手法を実証的に評価する。
検索アルゴリズム(SA)は競争力があるばかりでなく、最高の欲求、カバレッジベースのベースラインを上回りません。
論文 参考訳(メタデータ) (2022-11-24T10:45:39Z) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z) - CoSQA: 20,000+ Web Queries for Code Search and Question Answering [63.92224685262063]
CoSQAデータセットには、自然言語クエリとコードのペア用の20,604ラベルが含まれている。
本稿では,クエリコードマッチングを強化するために,CoCLRと呼ばれる対照的な学習手法を提案する。
我々は,CodeXGLUEを同じCodeBERTモデルで評価し,CoSQAのトレーニングにより,コード質問応答の精度が5.1%向上したことを示す。
論文 参考訳(メタデータ) (2021-05-27T15:37:21Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。