論文の概要: DeepREST: Automated Test Case Generation for REST APIs Exploiting Deep Reinforcement Learning
- arxiv url: http://arxiv.org/abs/2408.08594v1
- Date: Fri, 16 Aug 2024 08:03:55 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-19 16:07:32.448681
- Title: DeepREST: Automated Test Case Generation for REST APIs Exploiting Deep Reinforcement Learning
- Title(参考訳): DeepREST: 深層強化学習を爆発させるREST APIの自動テストケース生成
- Authors: Davide Corradini, Zeno Montolli, Michele Pasqua, Mariano Ceccato,
- Abstract要約: 本稿では、REST APIを自動テストするための新しいブラックボックスアプローチであるDeepRESTを紹介します。
深い強化学習を活用して、暗黙のAPI制約、すなわちAPIドキュメントから隠された制約を明らかにする。
実験により,提案手法は高いテストカバレッジと故障検出を実現する上で極めて有効であることが示唆された。
- 参考スコア(独自算出の注目度): 5.756036843502232
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Automatically crafting test scenarios for REST APIs helps deliver more reliable and trustworthy web-oriented systems. However, current black-box testing approaches rely heavily on the information available in the API's formal documentation, i.e., the OpenAPI Specification (OAS for short). While useful, the OAS mostly covers syntactic aspects of the API (e.g., producer-consumer relations between operations, input value properties, and additional constraints in natural language), and it lacks a deeper understanding of the API business logic. Missing semantics include implicit ordering (logic dependency) between operations and implicit input-value constraints. These limitations hinder the ability of black-box testing tools to generate truly effective test cases automatically. This paper introduces DeepREST, a novel black-box approach for automatically testing REST APIs. It leverages deep reinforcement learning to uncover implicit API constraints, that is, constraints hidden from API documentation. Curiosity-driven learning guides an agent in the exploration of the API and learns an effective order to test its operations. This helps identify which operations to test first to take the API in a testable state and avoid failing API interactions later. At the same time, experience gained on successful API interactions is leveraged to drive accurate input data generation (i.e., what parameters to use and how to pick their values). Additionally, DeepREST alternates exploration with exploitation by mutating successful API interactions to improve test coverage and collect further experience. Our empirical validation suggests that the proposed approach is very effective in achieving high test coverage and fault detection and superior to a state-of-the-art baseline.
- Abstract(参考訳): REST APIのテストシナリオの自動作成は、より信頼性が高く信頼性の高いWeb指向システムを提供するのに役立つ。
しかしながら、現在のブラックボックステストのアプローチは、APIの正式なドキュメンテーション、すなわちOpenAPI Specification(略してOAS)で利用できる情報に大きく依存している。
OASは主にAPIの構文的側面(オペレーション間のプロデューサとコンシューマの関係、入力値プロパティ、自然言語のさらなる制約など)をカバーしていますが、APIビジネスロジックの深い理解は欠如しています。
不足するセマンティクスには、操作間の暗黙的な順序付け(論理的依存関係)と暗黙的な入力値制約が含まれる。
これらの制限は、ブラックボックステストツールが真に効果的なテストケースを自動的に生成する能力を妨げます。
本稿では、REST APIを自動テストするための新しいブラックボックスアプローチであるDeepRESTを紹介します。
深い強化学習を活用して、暗黙のAPI制約、すなわちAPIドキュメントから隠された制約を明らかにする。
好奇心駆動学習は、APIの探索においてエージェントを誘導し、その操作をテストする効果的な順序を学ぶ。
これによって、最初にAPIをテスト可能な状態にするために、どの操作をテストすべきかを特定し、後でAPIのインタラクションが失敗するのを避けることができる。
同時に、成功したAPIインタラクションで得られた経験を利用して、正確な入力データ生成(どのパラメータを使うか、どのように値を選択するか)を駆動します。
さらに、DeepRESTは、成功したAPIインタラクションを変更して、テストカバレッジを改善し、さらなるエクスペリエンスを収集することで、エクスプロイトとエクスプロイトを交換する。
実験により,提案手法は高いテストカバレッジと故障検出を実現する上で非常に有効であり,最先端のベースラインよりも優れていることが示唆された。
関連論文リスト
- Utilizing API Response for Test Refinement [2.8002188463519944]
本稿では,応答メッセージを利用した動的テスト改善手法を提案する。
インテリジェントエージェントを使用すると、テストシナリオを生成するためにさらに使用されるAPI仕様に制約が追加される。
提案されたアプローチは、4xxレスポンスの数を減少させ、より現実的なテストケースを生成するための一歩を踏み出した。
論文 参考訳(メタデータ) (2025-01-30T05:26:32Z) - AutoRestTest: A Tool for Automated REST API Testing Using LLMs and MARL [46.65963514391019]
AutoRestTestは、REST APIをテストするための新しいツールだ。
セマンティック操作依存グラフ(SODG)とマルチエージェント強化学習(MARL)と大規模言語モデル(LLM)を統合している。
オペレーションカウントの成功、ユニークなサーバエラーの検出、時間経過に関する継続的なテレメトリを提供する。
論文 参考訳(メタデータ) (2025-01-15T05:54:33Z) - LlamaRestTest: Effective REST API Testing with Small Language Models [50.058600784556816]
LlamaRestTestは、2つのカスタムLCMを使って現実的なテストインプットを生成する新しいアプローチである。
LlamaRestTestは、RESTGPTで強化された仕様でさえ、コードカバレッジとエラー検出において最先端のツールを上回っている。
論文 参考訳(メタデータ) (2025-01-15T05:51:20Z) - APIRL: Deep Reinforcement Learning for REST API Fuzzing [3.053989095162017]
APIRLは、REST APIをテストするための、完全に自動化された深層強化学習ツールである。
APIRLは、現実世界のREST APIの最先端よりも、はるかに多くのバグを見つけることができます。
論文 参考訳(メタデータ) (2024-12-20T15:40:51Z) - ExploraCoder: Advancing code generation for multiple unseen APIs via planning and chained exploration [70.26807758443675]
ExploraCoderはトレーニング不要のフレームワークで、大規模な言語モデルにコードソリューションで見えないAPIを呼び出す権限を与える。
ExploraCoderは,事前のAPI知識を欠いたモデルのパフォーマンスを著しく向上させ,NAGアプローチの11.24%,pass@10の事前トレーニングメソッドの14.07%を絶対的に向上させることを示す。
論文 参考訳(メタデータ) (2024-12-06T19:00:15Z) - A Multi-Agent Approach for REST API Testing with Semantic Graphs and LLM-Driven Inputs [46.65963514391019]
私たちは、REST APIテストに依存性組み込みのマルチエージェントアプローチを採用する最初のブラックボックスツールであるAutoRestTestを紹介します。
このアプローチでは、REST APIテストを分離可能な問題として扱い、4人のエージェントがAPI探索を最適化するために協力します。
12の現実世界のRESTサービス上でのAutoRestTestの評価は、主要な4つのブラックボックスREST APIテストツールよりも優れています。
論文 参考訳(メタデータ) (2024-11-11T16:20:27Z) - KAT: Dependency-aware Automated API Testing with Large Language Models [1.7264233311359707]
KAT(Katalon API Testing)は、APIを検証するためのテストケースを自律的に生成する、AI駆動の新たなアプローチである。
実世界の12のサービスを用いたKATの評価は、検証カバレッジを改善し、文書化されていないステータスコードを検出し、これらのサービスの偽陽性を低減できることを示している。
論文 参考訳(メタデータ) (2024-07-14T14:48:18Z) - Leveraging Large Language Models to Improve REST API Testing [51.284096009803406]
RESTGPTはAPI仕様を入力として、機械解釈可能なルールを抽出し、仕様内の自然言語記述からサンプルパラメータ値を生成する。
評価の結果、RESTGPTはルール抽出と値生成の両方において既存の技術よりも優れています。
論文 参考訳(メタデータ) (2023-12-01T19:53:23Z) - Exploring Behaviours of RESTful APIs in an Industrial Setting [0.43012765978447565]
これらのAPIが示す振る舞いの例を生成するために,REST APIに共通する一連の動作特性を提案する。
これらの例は、APIの理解を深めるために(i)、自動テストケースのソースとして(ii)の両方に使用することができます。
提案手法は,システム理解と実践者によるテスト生成の源泉として考えられる例を生成することができる。
論文 参考訳(メタデータ) (2023-10-26T11:33:11Z) - Adaptive REST API Testing with Reinforcement Learning [54.68542517176757]
現在のテストツールは効率的な探索機構がなく、全ての操作とパラメータを等しく扱う。
現在のツールは、仕様にレスポンススキーマがない場合や、変種を示す場合に苦労している。
我々は、強化学習を取り入れた適応型REST APIテスト手法を提案し、探索中の操作を優先順位付けする。
論文 参考訳(メタデータ) (2023-09-08T20:27:05Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。