論文の概要: Learning to Encode and Classify Test Executions
- arxiv url: http://arxiv.org/abs/2001.02444v2
- Date: Mon, 2 Oct 2023 13:48:20 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-05 11:30:13.404573
- Title: Learning to Encode and Classify Test Executions
- Title(参考訳): テスト実行のエンコードと分類を学ぶ
- Authors: Foivos Tsimpourlas, Ajitha Rajan, Miltiadis Allamanis
- Abstract要約: 本論文の目的は,一般的な,スケーラブルで高精度なテストオラクル問題を解くことである。
実行トレースのごく一部をパスまたはフェールの判定でラベル付けします。
ラベル付きトレースを使用して、ニューラルネットワーク(NN)モデルをトレーニングし、実行のパスとフェールを区別する実行パターンを学習します。
- 参考スコア(独自算出の注目度): 14.67675979776677
- License: http://creativecommons.org/licenses/by-nc-sa/4.0/
- Abstract: The challenge of automatically determining the correctness of test executions
is referred to as the test oracle problem and is one of the key remaining
issues for automated testing. The goal in this paper is to solve the test
oracle problem in a way that is general, scalable and accurate. To achieve
this, we use supervised learning over test execution traces. We label a small
fraction of the execution traces with their verdict of pass or fail. We use the
labelled traces to train a neural network (NN) model to learn to distinguish
runtime patterns for passing versus failing executions for a given program. Our
approach for building this NN model involves the following steps, 1. Instrument
the program to record execution traces as sequences of method invocations and
global state, 2. Label a small fraction of the execution traces with their
verdicts, 3. Designing a NN component that embeds information in execution
traces to fixed length vectors, 4. Design a NN model that uses the trace
information for classification, 5. Evaluate the inferred classification model
on unseen execution traces from the program.
We evaluate our approach using case studies from different application
domains: 1. Module from Ethereum Blockchain, 2. Module from PyTorch deep
learning framework, 3. Microsoft SEAL encryption library components, 4. Sed
stream editor, 5. Value pointer library and 6. Nine network protocols from
Linux packet identifier, L7-Filter. We found the classification models for all
subject programs resulted in high precision, recall and specificity, over 95%,
while only training with an average 9% of the total traces. Our experiments
show that the proposed neural network model is highly effective as a test
oracle and is able to learn runtime patterns to distinguish passing and failing
test executions for systems and tests from different application domains.
- Abstract(参考訳): テスト実行の正確性を自動的に判断する課題は、テストオラクル問題と呼ばれ、自動テストにおける重要な課題の1つである。
この論文の目標は、一般的に、スケーラブルで正確である方法で、テストオラクルの問題を解決することである。
これを達成するために、私たちはテスト実行トレースよりも教師あり学習を使います。
実行トレースのごく一部をパスまたはフェールの判定でラベル付けします。
ラベル付きトレースを使用して、ニューラルネットワーク(NN)モデルをトレーニングし、プログラムの実行をパスする実行パターンとフェールする実行パターンを区別する。
このNNモデルを構築するための私たちのアプローチには、以下のステップがあります。
1.実行トレースをメソッド呼び出しとグローバル状態のシーケンスとして記録するプログラムを実行する。
2. 実行トレースのごく一部を評決でラベル付けする。
3. 実行トレースに情報を埋め込んだNNコンポーネントを固定長ベクトルに設計する。
4. 分類にトレース情報を利用するnnモデルの設計
5.プログラムから見つからない実行トレースの推論分類モデルを評価する。
異なるアプリケーションドメインのケーススタディを用いて、我々のアプローチを評価する。
1.Ethereumブロックチェーンからのモジュール
2. PyTorchディープラーニングフレームワークからのモジュール
3. Microsoft SEAL暗号化ライブラリコンポーネント
4. sedストリームエディタ、
5.値ポインタライブラリと
6. Linux パケット識別子 L7-Filter からの9つのネットワークプロトコル。
その結果,全対象プログラムの分類モデルでは95%以上の精度,リコール,特異性が得られた。
実験の結果,提案したニューラルネットワークモデルはテストオラクルとして非常に効果的であり,異なるアプリケーションドメインからのシステムやテストのパスとフェールを区別する実行パターンを学習できることがわかった。
関連論文リスト
- Learning to Predict Program Execution by Modeling Dynamic Dependency on Code Graphs [11.347234752942684]
本稿では,コードカバレッジを予測し,実行時のエラーを検出するための,新しい機械学習ベースのフレームワークであるCodeFlowを紹介する。
CodeFlowは、可能なすべての実行パスと、異なるステートメント間の関係を表現します。
実行中のステートメント間の影響を反映した実行トレースを通じて動的依存関係を学習する。
論文 参考訳(メタデータ) (2024-08-05T20:32:00Z) - TESTEVAL: Benchmarking Large Language Models for Test Case Generation [15.343859279282848]
大規模言語モデル(LLM)を用いたテストケース生成のための新しいベンチマークであるTESTEVALを提案する。
オンラインプログラミングプラットフォームLeetCodeから210のPythonプログラムを収集し、全体的なカバレッジ、ターゲットライン/ブランチカバレッジ、ターゲットパスカバレッジという3つの異なるタスクを設計します。
特定のプログラム行/ブランチ/パスをカバーするテストケースを生成することは、現在のLLMでは依然として困難である。
論文 参考訳(メタデータ) (2024-06-06T22:07:50Z) - Code-Aware Prompting: A study of Coverage Guided Test Generation in Regression Setting using LLM [32.44432906540792]
テスト生成における大規模言語モデルのコード認識促進戦略であるSymPromptを提案する。
SymPromptは、正しいテスト世代を5倍に増やし、CodeGen2の相対カバレッジを26%向上させる。
特に、GPT-4に適用すると、SymPromptはベースラインのプロンプト戦略に比べて2倍以上のカバレッジが向上する。
論文 参考訳(メタデータ) (2024-01-31T18:21:49Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - Learning from Self-Sampled Correct and Partially-Correct Programs [96.66452896657991]
そこで本研究では,モデルが学習中にサンプリングを行い,自己サンプリングされた完全正当プログラムと部分正当プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立てることができることを示す。
提案手法は,MLEを用いた単一の参照プログラムからの学習と比較して,パス@kの性能を3.1%から12.3%向上させる。
論文 参考訳(メタデータ) (2022-05-28T03:31:07Z) - Prompt Consistency for Zero-Shot Task Generalization [118.81196556175797]
本稿では,ラベルのないデータを用いてゼロショット性能を向上させる手法について検討する。
具体的には,複数のプロンプトを使ってひとつのタスクを指定できることを利用して,プロンプトの一貫性を規則化する手法を提案する。
我々のアプローチは、4つのNLPタスクにまたがる11のデータセットのうち9つにおいて、最先端のゼロショット学習者であるT0を精度で最大10.6の絶対点で上回ります。
論文 参考訳(メタデータ) (2022-04-29T19:18:37Z) - Absolute Wrong Makes Better: Boosting Weakly Supervised Object Detection
via Negative Deterministic Information [54.35679298764169]
弱教師付き物体検出(WSOD)は、画像レベルのラベルを用いて物体検出を訓練する難しい課題である。
本稿では,WSODにおける決定論的情報を特定し,完全に活用することに焦点を当てる。
我々は、WSOD、すなわちNDI-WSODを改善するための負の決定論的情報(NDI)に基づく手法を提案する。
論文 参考訳(メタデータ) (2022-04-21T12:55:27Z) - On the Evaluation of Sequential Machine Learning for Network Intrusion
Detection [3.093890460224435]
本稿では,悪質な活動パターンを示すNetFlowの時間的シーケンスを抽出するための詳細な手法を提案する。
次に,この手法を適用し,従来の静的学習モデルと逐次学習モデルの有効性を比較した。
論文 参考訳(メタデータ) (2021-06-15T08:29:28Z) - Active Testing: Sample-Efficient Model Evaluation [39.200332879659456]
サンプル効率のよいモデル評価のための新しいフレームワークであるactive testingを紹介する。
アクティブテストは、ラベルにテストポイントを慎重に選択することでこれに対処する。
我々は,推定器のばらつきを低減しつつ,バイアスの除去方法を示す。
論文 参考訳(メタデータ) (2021-03-09T10:20:49Z) - Learning to Execute Programs with Instruction Pointer Attention Graph
Neural Networks [55.98291376393561]
グラフニューラルネットワーク(GNN)は、ソフトウェアエンジニアリングタスクを学習するための強力なツールとして登場した。
リカレントニューラルネットワーク(RNN)は、長いシーケンシャルな推論の連鎖に適しているが、プログラム構造を自然に組み込んでいるわけではない。
本稿では,新しいGNNアーキテクチャ,IPA-GNN(Instruction Pointer Attention Graph Neural Networks)を導入する。
論文 参考訳(メタデータ) (2020-10-23T19:12:30Z) - Self-Supervised Log Parsing [59.04636530383049]
大規模ソフトウェアシステムは、大量の半構造化ログレコードを生成する。
既存のアプローチは、ログ特化や手動ルール抽出に依存している。
本稿では,自己教師付き学習モデルを用いて解析タスクをマスク言語モデリングとして定式化するNuLogを提案する。
論文 参考訳(メタデータ) (2020-03-17T19:25:25Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。