ReadyAPI の機能

最新バージョンの新機能とバージョン履歴はこちら

 

ReadyAPI プラットフォームの機能


どのツールからでも、プラットフォームのパワーを利用できます

ReadyAPI プラットフォームは以下の製品に共通の機能を提供します。
以下のいずれかの製品を購入することで無償提供されます。

  • API 機能テスト ツール - ReadyAPI Test (旧名称 SoapUI Pro)
  • API 負荷テスト ツール - ReadyAPI Performance (旧名称 LoadUI Pro)
  • サービス仮想化ツール - ReadyAPI Virtualization (旧名称 ServiceV Pro)

さらに、各ツールには誰もが利用可能な基本機能と Pro エディションで利用可能な拡張機能が含まれています。

 

 

各ツールの基本機能と Pro エディションの違い

 

 


 

ReadyAPI ダッシュボード

 

新しい ReadyAPI ダッシュボードは、機能テスト、セキュリティテスト、および負荷テストについて、リアルタイムでエンドツーエンドの洞察を提供します。 テストの実行、結果、および使用状況の詳細が提供されるため、傾向を簡単に見つけることができます。 また、ユーザーが自分の仮想サービスを管理して、ステータスと使用状況の詳細を提供することもできます。

開発者とテスターは、効果的な API テストのために、適切なタイミングで、適切な呼び出しをする必要があります。 このためにテスト結果への素早い洞察を必要とします。 ReadyAPI ダッシュボードはこれを可能にし、次の方法でユーザーを支援します。

  • 機能テスト、パフォーマンステスト、およびセキュリティテストの状態に関するエンドツーエンドの洞察
  • フィルタおよびデータ ドリルダウンによる詳細なテスト結果ビュー
  • 数回クリックするだけで、過去の傾向やテスト結果に簡単にアクセスできます。
  • チームおよび経営陣への効果的なレポート作成のためのレポートのクイック ダウンロード

ダッシュボードは、ユーザーによって実行された機能テスト、パフォーマンス テスト、およびセキュリティ テストからのテスト結果をカプセル化します。 ユーザーは現在の日、過去の日、または日付の範囲に関するテスト結果を見ることができます。 ダッシュボード上のグラフは対話式であり、結果はテスト結果タイプやプロジェクト名などのディメンションでフィルタリングできます。

ダッシュボードはテスト結果に関する詳細なドリルダウンも提供します。 ドリルダウンでは、テストケースごとに結果が表示されます。 ダッシュボードの結果は、一般的な形式のレポートとしてエクスポートできるため、ユーザーによる洞察をチームやマネージャと簡単に共有できます。

ダッシュボードでは、数回クリックするだけで、機能、負荷、およびセキュリティのテストケースを簡単に作成できます。 ReadyAPI で仮想サービスを作成したユーザーは、ダッシュボードでこれらを簡単に管理できます。 仮想サービスビューでは、ユーザーは仮想サービスをすばやく開始、停止、およびポートを変更できます。

 


 

プロジェクト

 

エンドポイント、アサーション、データなどを再利用して、 1か所で API を管理します。

テストケース、データソース、オブジェクトコンポーネントなど、プロジェクトに関連するすべての情報を再利用性と管理を容易にするため、一元化された場所に作成および管理して、ReadyAPI Test、ReadyAPI Performance、ReadyAPI Virtualization など、ReadyAPI スイート全体でこのデータを共有できます。

  • プロジェクトを作成して管理し、各プロジェクトの概要情報とツール間での使用方法を確認します。
  • WSDL/WADL を追加するか、他のサービス記述から API をインポートします。
  • 各 API のテストと仮想サービスを生成します。
  • テストで使用されている操作、メソッド、および要求を追加、コピー、および変更できます。

 


 

メトリクスとレポート

 

ReadyAPI スイート全体で、中央の標準化されたレポート作成機能を使用して、データとメトリックの測定と表示をリアルタイムでサポートします。 テスト結果を簡単に JUnit または他の標準形式でエクスポートできます。

ReadyAPI スイートには、すべての ReadyAPI アプリケーションを強化するパワフルで使いやすいレポート作成機能が付属しています。 テストがどのように行われているのか、カバレッジが何であるのか、virt の使用法は何かを管理者に見せるため、標準化された報告機能は必要とする答えを提供します。

ワンクリックで、ツールレベルで詳細レポートを生成し、それらを PDF、HTML、Word、Excel などの標準形式にエクスポートできます。 チームと結果を共有したり、レポートを管理したりするのはこれまでになく簡単になりました。

 


 

CI/CD サポート

 

ReadyAPI プラットフォームは、ほぼすべての CI / CD ワークフロー内に簡単に適合するため、新しいコードが展開されるたびにチームは API テストスイートを実行することができます。 ネイティブの Jenkins 統合により、数分で起動します。

継続的インテグレーションとデプロイメントのための API テスト

インストール ディレクトリにある TestRunner スクリプトを使用して、継続的インテグレーションの一環として一連の機能的な API テストを実行できます。 ReadyAPI をコマンドラインで実行すると、次のことが可能になります。

  • テストがどの環境で実行されるかを制御します (すなわち、開発、QA、ステージングなど)。
  • プロジェクト内の特定の API テストケース、テストスイート全体、またはすべてのテストスイートを実行します。
  • テストケース レベルでタグに基づいてテストの特定のサブセットを実行します。
  • 動的ホスト名など、前の継続的インテグレーション ステップからのパラメーターを提供します。

継続的インテグレーションのための ReadyAPI の自動化についての詳細は、ドキュメントをご覧ください。

 


 

柔軟なテスト スクリプト サポート

 

ReadyAPI のメニュー選択以外の追加の機能が必要であれば、より高度な機能を実行できる独自のスクリプトを書くことができます。 ReadyAPI は、JavaScript および Groovy スクリプティングに対して次の機能を提供します。

  • 関数の説明とそのパラメータリストにアクセスする便利な方法として、コード補完機能を使用してください。 ReadyAPI のコード補完を使用すると、スクリプトを開発するときに必要な暗記や調査の量が減ります。
  • 開始を助けるために、ReadyAPI には機能に特有の変数を呼び出すいくつかの基本的なスクリプトエディターが含まれています。たとえば、新しいテスト スイートを作成すると、セットアップ、破棄、およびレポート作成のための組み込みのスクリプト エディターがあります。
  • Groovy クラスを ReadyAPI の任意のスクリプトからアクセスできる Groovy スクリプト ライブラリに保存してから、ReadyAPI プリファレンスでそのライブラリへのパスを設定するだけです。ライブラリの更新が継続的にチェックされ、常に最新の状態に保たれるので、新しいスクリプトまたは既存のスクリプトが引き続き動作します。

 


 

ビジネスに不可欠な API を発見する

 

API ディスカバリ機能を使用すると、ReadyAPI 内部ブラウザーまたは ReadyAPI をプロキシとして使用する外部ブラウザーを介して HTTP トラフィックを監視できます。 そのアクティビティ内の REST トラフィックをキャプチャしてトラフィックログに書き込むことで、関心のある特定のトラフィックタイプを参照できます。API ディスカバリを使用して、プロジェクト内に API 定義または仮想サービス (virts) を作成できます。

内蔵ブラウザーを使用して発見する

内部ブラウ​​ザーを使用して API を検出するには、レコーダーをオンにして URI を選択し、キャプチャしたいリソースを参照します。気になるすべてのリソースにアクセスしたら、録音をオフにすれば完了です。

プロキシを使用して発見する

ReadyAPI は、クライアントと指定されたホストとの間でメッセージをやり取りするための標準プロキシとして機能します。ウィンドウを開くとすぐにプロキシが実行されるため、明示的にプロキシを起動する必要はありません。プロキシのポートは設定可能で、変更はリアルタイムで適用されます。

クライアントを使用して発見する

内蔵ブラウザーを使用する代わりに、同じネットワークまたはコンピュータ上のクライアントを使用できます。 HTTP トラフィックが ReadyAPI のキャプチャ プロセスを通過するように、プロキシとして ReadyAPI を使用するようにクライアントを設定するだけです。

関連トラフィックをフィルタリングして選択したら、それを使用してさまざまなことを実行できます。

  • ReadyAPI Test テストプロジェクトで使用するためにサービスに変換します。
  • これを使用して、サービスとともに TestCases 含む TestSuite を作成します。
  • ReadyAPI Virtualization で仮想サービスを作成します。

 


 

ReadyAPI プラグイン マネージャー

 

すべてを考えようとしても、できないこともあります。 開発ツールのすぐに使える機能に限定されていると、組織にとって最適ではないプロセスとテクノロジの選択を強いられる可能性があります。 これは、選択が市場の要求に対応する組織の能力と進化する機能に影響を与える API の世界では特に当てはまります。

  • 既存のプラグインを参照して、すでにリポジトリにある特定のカスタマイズを追加します。
  • 一部またはすべての ReadyAPI ツールに機能を追加します。 それをインストールするユーザーのためのトップナビゲーションに追加される新しいツールを作成することさえできます。
  • アノテーションベースの拡張ポイントを使用し、サードパーティの依存関係を自動的にインストールする、シンプルなプラグインフレームワークを利用してください。
  • SoapUIPlugin@SmartBear.com に送信して、プラグインをチームの他のユーザーまたは ReadyAPI コミュニティ全体と共有します。 最初に拡張子を変更してEメールがブロックされないようにしてください(SmartBear で.jar に戻します)。

 


 

TestEngine

 

TestEngineは、SoapUI および ReadyAPI テストを大規模に自動化するための最適化されたテストランナーです。

 

インフラストラクチャを処理せずにテストを並行して実行

  • TestEngine と同時にテストを実行することにより、配信パイプラインを加速します。

  • インフラストラクチャのメンテナンスを最小限に抑えながら、大規模なテストスイートを短いアドホック テストケースとともに実行します。

 

ジョブ キューのボトルネックなしの実行

  • TestEngineは、テストが到着すると要求をキューに入れ、ピーク時に提出されるプロジェクトをステージング、実行し、需要の変動に応じて結果を分散クライアントに返します。

 

TestEngine を任意の環境に統合

  • 柔軟な展開オプションにより、Docker、VM、Mac、Linux、または Windows を使用して TestEngine を任意のクラウドまたはオンプレミス環境にインストールし、集中実行モデルまたは分散オプションをサポートできます。

 

TestEngine の詳細

ReadyAPI Test の機能


ReadyAPI Test には、REST、SOAP、JMS、および JDBC サービスをテストするために特別に構築された包括的な機能の長いリストがあります。 DevOps エコシステムに関する最も一般的なツールのネイティブ統合により、ReadyAPI Test の強力な機能セットを CI/CD パイプラインに直接組み込むことができます。

 

 


 

包括的なエンドツーエンド API テスト

 

複雑な API トランザクションとワークフローを組み合わせて、オンデマンドまたは CI/CD 環境で実行できる強力なテストスイートを作成します。

 

テストを作成する 3 つの簡単な方法

  • エンドポイントをヒット

    API エンドポイントをテストして、ヘッダーとペイロードの情報を取得します。

  • 定義をインポート

    OAS (Swagger)、WSDL、WADL 定義をインポートして、テストケースを生成します。

  • ライブ トラフィックを記録

    API サービスからのライブ トラフィックを記録し、次に再生してテストケースを生成します。

 

API テストをチェーン

API のテストで最も難しい部分の 1 つは、マルチステップ トランザクションが正しく検証されていることを確認することです。 ReadyAPI Test を使用すると、広範なコーディングの知識や技術的なスキルを必要とせずに API ワークフローのテストを開始できます。 ログイン手順を実行して検証し、そのデータを使用してエンタープライズ メッセージング サービスをテストし、そのユーザーが有効であることをアサーションする - すべてが 1 つのテストケース内でできます。 

 

自動テスト デバッギング

テスト品質を改善して、SmartBear のテスト デバッギングで段階的にテストフローに従ってください。 デバッグ インタフェースはテストフロー、変数、プロパティ、リクエスト、コンテキストなどを簡素化し、テストの作成と改善をより合理化します。 テストがどこで失敗しているかを正確に確認し、コードベースまたはテストケースに適切な変更を加えることができます。

 

環境を素早く交換

ターゲット環境に応じてテスト設定をすばやく変更するので、テスト、ステージング、またはローカルサーバーのテストを書き換える必要はありません。ドロップダウンで環境を変更するだけです。

 


 

スクリプトなしの API テスト

 

ReadyAPI Test のポイントアンドクリック機能により、複雑なスクリプト作成やマルチレベルのナビゲーションなしで高度な機能を API テストに組み込むことができます。

 

簡単なポイント & クリック テスト

ReadyAPI Test のポイント アンド クリック テストにより、複雑なスクリプト作成や面倒なナビゲーションなしで高度な機能を組み込むことができます。 ポイント アンド クリック機能を使用してアクションまたはデータを選択し、すぐにそれらをテストスイートに含めることができます。

 

アサーション

ポイント アンド クリック機能では、右クリックして組み込みアサーションの 1 つを選択するだけで、XPath または JSON Path テストにアサーションを簡単に追加できます。 テストのレスポンスを検証するためにこれらの共通のアサーションを使用することで、テストをより迅速に構築し、複雑なスクリプト作成を回避します。

 

プロパティ転送

あるテスト ステップからのレスポンスを使用して、別のテスト ステップでリクエストを送ります。 この機能を活用して、テストの作成を直感的かつユ ーザーフレンドリーにします。 数回クリックするだけで、プロジェクト プロパティ、JSON パス、および XML 要素 への複雑な動的参照を作成できます。 検索機能を使用してプロジェクト全体のプロパティを検索し、その場で新しいプロパティを追加することもできます。

 


 

CI/CD オートメーション

 

新しいコードを統合するたびに自動 API テストを起動します。ReadyAPI Test は、Jenkins 用のネイティブ プラグインやその他の一般的なツール、および使いやすいコマンドライン インターフェース使用して、CI/CD プロセスに簡単に統合できます。

 

ほんの数分で CI/CD パイプラインを自動化する API テストツール

テストの自動化は、継続的なデプロイメント プロセスに移行するときに必要な方法です。ReadyAPI Test を使用すると、開発者、テスター、オペレーション エンジニアなど、チームの誰でも自動 API テストをパイプラインに簡単に組み込むことができます。 ネイティブのプラグインを使用して ReadyAPI Test を Jenkins、TeamCity、または Azure DevOps と統合するか、またはビルダーを使用して独自のコマンドライン引数を作成して、組織が使用するほぼすべての CI サーバーと統合します。

  • ローカルまたは GitHub のような Git リポジトリ内にテストを保存。
  • 毎回のコミットの一部としてテストを実行。 
  • ローカル、ステージング、または QA 環境のテストを 1 つの引数で切り替える。
  • JUnit、XML、またはカスタム スタイルのレポート作成による結果のエクスポート。

 

ReadyAPI Test は、さまざまな自動化ツールと統合します

 

 


 

データ ドリブン テスト

 

ファイルまたはデータベースからデータをインポートするか、ReadyAPI Test Data Generator を使用して独自の合成データを簡単に作成できます。

 

テスト アサーションに現実的なデータを取り込む

データ ドリブン テストは、テストデータ (入力、リクエスト、パラメータ、結果など) を何らかの外部記憶装置 (スプレッドシート、XML など) に格納してから、そのデータを使用してそれらを自動的に取り込む場合です。 たとえば、電話検索サービスをテストするには、スプレッドシートに名前とそれに関連する電話番号のリストがあるとします。 スプレッドシートをテストに接続して、そのデータを使用してテストを「駆動」し、各名前が正しい電話番号に戻ってくることを確認できます。

ReadyAPI Test では、データ ドリブン テストの作成は 3 つの基本要素で構成されています。

 

Data source

ReadyAPI Test には、多数の外部ソース (Excelファイル、XMLプロパティ、JDBCソース、ファイル/ディレクトリなど) からテストデータを読み取り、それらを標準の ReadyAPI Test プロパティに変換するための DataSource TestStep が含まれています。

 

TestSteps

その後、Property Transfer (プロパティ転送) または Property Expansion (プロパティ拡張) を使用して、リクエスト、アサーション、xpath クエリ、スクリプトなどの他の TestSteps でそのデータを使用できます。

 

DataSource Loop

次に、DataSource Loop TestStep を使用して、データソース内の各行またはレコードについて前のテストステップをループバックします。

 


 

API セキュリティ テスト

 

ReadyAPI Test には高度なセキュリティ テスト機能が含まれています。 クリックするだけで、新規または既存の機能テストにセキュリティ スキャンを追加できます。

 

10 以上の組み込みセキュリティ テストから始める

API テストに簡単に追加できるいくつかの組み込みセキュリティ スキャンを提供することで、開発プロセスの早い段階で API セキュリティの脆弱性を見つけて対処できます。 クロスサイト スクリプト、ファジング スキャン、SQL インジェクションなどをエンドポイントに対して実行できるため、デプロイするたびに重要な API セキュリティテストを確実に実行できます。

 

数分でセキュリティ テストを設定

ReadyAPI Test を使用すると、新規または既存の機能テストにワンクリックでセキュリティ スキャンを追加できます。 ユニークなセキュリティ スキャン ウィザードでは、使用するスキャンと実行するテスト ステップを選択して、テスト実行をカスタマイズする手順が順を追って説明されます。

 

洞察に満ちたレポートおよび分析

高度なエクスポート可能な結果を使用して、セキュリティ テストの結果を詳しく調べます - JUnit、CSV、HTML、およびその他のカスタマイズ可能な形式で利用できます。 最も重要なテストとエンドポイントからの特定の結果とログが参照できます。

 

APIセキュリティをデリバリー パイプラインに合わせる 

ReadyAPI Test を使用すると、セキュリティ テストを DevSecOps または Agile 開発ワークフローに簡単に合わせることができます。 パイプラインを上下に統合することで、テストケースを Git レポジトリに保存し、新しいコードをコミットし、Docker を含むほぼすべての環境で毎回のビルド中に CI サーバーにそれらのテストを実行させることができます。

  • Jenkins、Azure DevOps、および TeamCity とのネイティブ統合 
  • ほぼすべての CI サーバーでの自動テストのためのコマンドライン サポート
  • 結果は JUnit や XML のような一般的なフォーマットでエクスポート可能

 

 


 

API レポーティング ダッシュボード

 

ベースライン機能と比較機能を使用して問題を迅速に診断します。

 

何かが失敗したときに必要なコンテキスト

リクエストが実行されるたびに、実行の履歴 (リクエストとレスポンスを含む) がテストケースとともに保存されます。 これは、予期しない失敗したテストを診断するときに、以前の実行に関する重要なコンテキストをユーザーに提供します。

ReadyAPI Test では、テスト履歴データは、3 つの画面間で管理されます。

 

History (履歴)

ReadyAPI Test には、特定のテストの過去の実行とアサーションの失敗などの結果の要約を示す [Test History] 画面があります。

 

Compare (比較)

障害が発生したときに、以前の承認されたテスト実行と現在の障害との違いを診断すると、診断プロセスが大幅に簡素化されます。 完全な比較ログを表示するためのオプション、または単に差分を表示するオプション、および ReadyAPI Test テストケースを継続的統合実行したときの自動アラートへの応答を強力に制御するために、自動的に保持する実行回数を指定する機能、どこで何が失敗しているのかその両方を迅速に診断する方法のオプション。

 

Transaction Log (トランザクション ログ)

テストケースの履歴リストに表示されているアーカイブ実行の場合、アーカイブ実行の各テストステップのリクエストとレスポンスのスナップショットにドリルダウンできます。 これはテストケースが失敗した場所を正確に示し、どのステップが問題を引き起こしているか (リアルタイムでそれを再度実行することなく)、そして注目すべきテスト実行をアーカイブする機能を提供します。

ReadyAPI Performance の機能


直感的でパワフルな API 負荷テスト

API の安定性確保を過小評価することはできません。 API に対する簡単かつ効率的な負荷テストのために ReadyAPI Performance を使用したり、さらなるパワーのため ReadyAPI の他のツールを組み合わせて使用できます。

  • 複数のパフォーマンス ストラテジー

  • テスト結果に関するリアルタイムのフィードバック

  • 既存の ReadyAPI Test (旧 SoapUI Pro) 機能テストの再利用

  • 複雑なシナリオのため、同時負荷テストの実行

 


 

柔軟な展開と負荷生成

 

ローカルマシン、Amazon Elastic Cloud、または世界中の分散マシンを使用して負荷テストを実行します。

 

 

Amazon Elastic Cloud (EC2) を使ったクラウドベースの API 負荷テスト

余分な時間やお金はありません。しかし、稼働前または継続的なビルド プロセスの中で、非常に重要な負荷テストを実行しなければなりません。サーバーを購入したり、オンプレミスの仮想マシン要求で IT のオペレーションを混乱させたくありません。

このような状況で必要なのは、クラウドのパワーです。ReadyAPI Performance が支援します:

  • 大規模な負荷テストを素早く立ち上げる
  • 複数の地域からの負荷テスト
  • クラウド コンピューティング グループ間でワークロードを分割
  • 実行する前に負荷テストのコストを見積もる

 

オンプレミスまたはクラウド負荷エージェントへのトラフィックの分散

負荷テストの実行には、何百という仮想ユーザーからの要求をシミュレートすることが含まれます。 これらのユーザーをシミュレートするには、テストを実行しているコンピューターから多くのリソースが必要です。 状況によっては、1 台のコンピューターでサーバーを正しくテストするのに十分な負荷を生成できないことがあります。

これを避けるために、分散テストを作成できます。 これらのテストでは、ターゲット サーバーの負荷をシミュレートするために複数のコンピューターを使用します。 同時に、個々のコンピュータが負荷の発生を処理できます。

負荷を生成しているコンピューターが異なる地域にある場合は、サーバーがこれらの地域のクライアントとどの程度連携しているかを測定できます。 これはまた、より現実的なテストを作成します。 すべてのユーザーが 1 台のコンピューターからサーバーにアクセスすることはほとんどないため、分散テストを実行するとシミュレーションは実際のユーザーの動作に近づきます。

 


 

機能テストを負荷テストとして再利用

 

元のテストをやり直すことなく、さまざまな負荷テストシナリオで既存の ReadyAPI Test テストを使用できます。

 

ReadyAPI Test テストを再利用する

ReadyAPI Performance では、新しい負荷テストを簡単に作成できます。 ReadyAPI Test (旧 SoapUI Pro) でテストを作成してから、それらの既存のテストケースを負荷テストの基礎として使用するだけです。

テストをロードするためにテストケースを選択すると、ReadyAPI Performance は、次のことをします:

  • テストケース内の各リクエストを含む負荷テストを作成します。
  • 負荷テストの種類を選択してから、実行する負荷テストの種類に基づいて構成を設定できます。

ReadyAPI Performance を使用するときにテストケースを最初から定義する必要はありません - 機能テストを作成して実行し、その後数分で簡単に負荷テストを定義するだけです。

 


 

プリビルドの負荷テスト テンプレート

 

包括的な API 負荷テストを行うには、複数のパフォーマンス テスト ストラテジーを採用する必要があります。 ReadyAPI Performance は、ニーズに合ったビルトインの負荷ストラテジーを提供します。

 

無限のテスト ストラテジー

ReadyAPI Performance で利用可能な負荷ストラテジーを使用すると、さまざまな種類の負荷を時間の経過とともにシミュレートでき、さまざまな条件下で API のパフォーマンスを簡単にテストできます。 ReadyAPI Performance に含まれるストラテジーは以下のとおりです。

Fixed

このストラテジーでは、固定の負荷レートを設定してから、要求したレートを維持するために必要な数のリクエストを自動的に実行します。 これは他のストラテジーと組み合わせて使用するのに適したストラテジーであるため、他の負荷アクティビティと組み合わせて、定常状態のボリュームに対する API の応答を調べることができます。

Burst

このストラテジーは、設定された遅延時間を待ってから、定義された数のスレッドを特定の期間実行します。 これにより、API に対するトラフィックの急上昇を模倣できます。

Ramp Up

このストラテジーでは、ピーク到着ユーザ数と立ち上がり期間 (ramp duration) を設定することで、時間の経過に伴うリクエスト数の相対的な変化を設定できます。

Ramp Sequence

最初にベースボリュームが何であるかを判断してから、ReadyAPI Performance にピーク時のユーザーボリュームが何であるかを伝えて、負荷テストを最大限に活用します。 さらに強さを増すには、ボリュームを増加させ続ける時間を設定するための ramp duration と、最大ボリュームを維持する時間を設定するための peak duration を追加します。  

Custom

描画ツールを使用して、時間の経過とともに負荷の増減を設定します。 ユーザーの行動をより強力にシミュレーションするための思考時間 (think time) を追加します。

Variance

テストの期間とスレッド数の変動量の両方を設定することによって、のこぎり波、正弦波、または方形パターンで時間の経過とともにスレッド数を変更するには、このストラテジーを使用します。

 

負荷テンプレートの実行をスケジュール

ReadyAPI Performance は、時間の経過とともにペイロードを視覚化するのに役立ちます。 複数のシナリオが発生する場合は、数分間のスパイク テストから定常状態のプロファイル負荷テストまで、一定量のトラフィックがいつ導入されるかを制御できることが重要です。 ある期間にわたってさまざまな負荷プロファイル (傾斜、固定、分散など) を使用すると、実際の状態をシミュレートするのに役立ち、スケジューラーはこのニーズを補完します。

ReadyAPI Performance スケジューラーを使用すると、負荷テストの各シナリオのタイミングを制御できます。 

 


 

並列 API 負荷テスト

 

複数の負荷テストシナリオを同時に実行して、さまざまな条件が相互にどのように作用して API のパフォーマンスに影響を与えるかを確認します。

 

並列 (同時) API 負荷テスト

パフォーマンス テスト ストラテジーの重要な要素は変動性です。 システムが持続的なストレスの下でどのように動作するかを知ることは重要ですが、ストレスを受けたシステムがトラフィックの急上昇をどのように処理するかを知ることはさらに重要です。

ReadyAPI Performance を使用すると、特殊なテストを作成して同じ API に対して同時に実行することができます。

  • ReadyAPI Performance の事前定義済み負荷テスト ストラテジーを使用して、複数のシナリオを簡単に構築できます。
  • 各テストに独自の立ち上がりとボリュームを設定して、サーバー上の予想されるユーザーボリュームを模倣します。
  • テストの実行中に、組み込みの LoadTest Log でリアルタイムのレポートを取得します。 

複数のトラフィック パターンをシミュレートすることは、実際の API 使用をシミュレートするときに重要です。 ReadyAPI Performance の並列負荷テストでは、個々のトラフィック パターンを独立して設計し、それらをまとめて統合負荷を構築することで、システムが本当にプライムタイムの準備ができていることを証明できます。

 


 

問題を起こさないサードパーティの負荷テスト

 

ReadyAPI PerformanceReadyAPI Virtualization または VirtServer、あるいはその両方と併用して、仮想化されたアセットに対して複雑な負荷シナリオを実行し、負荷テストの結果がサードパーティの API の影響を受けないようにします。

 

精度向上のための負荷テストの分離

最良の API 負荷テスト シナリオは、"テストしないもの" と "テストするもの" についての分離です。 API が他の API に依存している場合、それらが結果を歪めないようにそれらをテストから分離することが重要です。

  • これらの API を仮想化することで、負荷テスト中にサードパーティの API 依存関係によるコストを回避し、必要な負荷テストを安心して実行できるようにします。
  • 負荷テストからさらに強力な機能を得るために、virts (仮想サービス) を使用して 2 次 API 用にさまざまな環境プロファイルをエミュレートします。
  • 実際にセカンダリ API に大きな負荷をかけずに、アプリケーション全体の構造がストレスにどのように対応するかを判断できるように、負荷テストを行っている API と対話する仮想化アセットを使用してさまざまな負荷ストラテジーをシミュレートします。
  • ReadyAPI Vitrualization では、依存しているが直接テストをロードできない API に対して仮想化されたアセットを作成できます。

 


 

サーバー監視

 

サーバーがトラフィックにどのように応答するかを可視化することで、どのリソースが待ち時間やボトルネックを引き起こしているのかを診断するのに役立ちます。 サーバーに対する負荷テストの影響を監視します。

 

負荷のかかるサーバーのパフォーマンスを監視する

負荷テストを実行するときは、サーバーが特定の方法で処理する必要がある負荷を作成します。 ReadyAPI Performance を使用して、テストを実行した Web サーバーのさまざまなメトリクスを追跡し、それらが予想どおりに機能するかどうかを確認できます。 これを行うには、ReadyAPI Performance の [Monitoring] ページを使用します。

ReadyAPI Performance は、テストされた Web サーバーから利用可能なすべてのメトリクスを収集し、テスト実行中にリアルタイムでページの下部に最も重要なものをグラフとして表示します。 他のメトリクスは [Statistics] ページで利用可能です。 メトリクスは、シミュレートされたユーザーの数やサーバーの応答時間など、テスト実行に関する他の統計とともに保存されます。 これらのメトリクスを使用して、サーバーのパフォーマンス ボトルネックを見つけて解決することができます。

 

サポートされているサーバー監視

ReadyAPI Performance は以下の監視をサポートします。

オペレーティング システム

  • Windows
  • Unix

Web サーバー

  • Apache
  • IIS

アプリケーション サーバー

  • TomCat
  • WebLogic

データベース

  • MSSQL
  • MySQL

ReadyAPI Virtualization の機能


迅速な開発を可能にする手頃な価格でパワフルなサービス仮想化

今日のアプリケーションは、API に大きく依存しています。それは、これらのアプリケーションのテストは、API に依存しているということを意味します。ReadyAPI Virtualization ツールを使用すると、これらの API の代役として仮想サービスを使用して、日程通りに予算内でプロジェクトを維持できます。

  • API へのアプリケーションの応答をテストするための調整とサーバー設定を追加。

  • アプリケーションが利用できない API を処理するための機能を検証するためのエラー条件を設定。

  • ビルドおよびテストのためにパートナーおよび外部の開発者への仮想サービスを提供。


 


 

簡単な仮想サービスの作成

 

API 定義から仮想サービスを作成するか、既存のサービスを記録して使用するか、またはゼロから仮想サービスを生成します。

 

すぐに始めるための 3 つの方法

仮想サービスを作成および定義するための ReadyAPI Virtualization の使いやすいインターフェースを使用したサービス仮想化を始めましょう。 Ready API は、Pro モジュールを購入したかどうかにかかわらず、仮想サービスを作成して使用するための基本機能を提供します。 ReadyAPI Virtualization で仮想サービスを作成するためのこれらの簡単な方法のいずれかを使用して、今日から始めましょう。

 

API 定義をインポート

OAS (旧 Swagger)、WSDL、WADL などの API 定義をインポートして、ReadyAPI Virtualization でモック API をわずか数秒で生成します。 それから、実施すべきことは、仮想サービスがどのように振る舞うことを望むかの詳細を設定することだけです。

 

記録とディスカバリ

ReadyAPI Test と同じ強力な API Discovery 機能を使用すると、SmartBear 社の内部ブラウザーを使用して HTTP/S トラフィックを記録し、ReadyAPI Virtualization にアプリケーションとの対話中に発生するすべての API トランザクションを識別させることができます。 レコーディングを使用すると、テストに含める特定の種類のイベントをシミュレートするサードパーティ API の仮想サービスをビルドできます。

  • 内部ブラウザーで URL を入力して、あなたの行動を記録します。
  • アクションを記録するときにキャプチャしたいコンテンツ タイプとレスポンス コードをフィルタリングして、特定のシミュレーションを作成します。

 

ゼロから

最大限の制御のために、設定した空の SOAP、REST、または JDBC 仮想サービスから始めることを選択できます。 ReadyAPI Virtualization は、仮想サービス (virt) を定義して実行するために必要なすべての情報を入力するように促します。

 


 

仮想サービスの共有とデプロイ

 

モックを作成し、設定して、ローカルマシンにデプロイする、あるいは、パブリックまたはプライベート クラウド内にデプロイして共有します。 Web UI から各仮想サービスのトラフィックとパフォーマンスを分析します。

 

無駄を減らし、組織周辺のモックを共有する

サービス仮想化の最も強力な側面の 1 つは、サードパーティの開発者や組織内の他のチームに仮想サービスを提供できることです。 ReadyAPI VirtualizationVirtServer を組み合わせることで、API とデータベースを使用するすべての人との間で virt (仮想サービス) を作成および共有することの力を引き出すことができます。

  • 仮想サービスを他のチームと共有することで、テストチームは、アプリケーションが依存するサービスを使用してさまざまな条件をシミュレートする強力で柔軟なテストを構築できます。
  • パートナー側の開発者に仮想サービスを提供してコードを作成したりテストしたりすることで、開発者側のコストや混乱を招くことなく、パートナー開発者の作業をはかどらせることもできます。
  • パフォーマンス テスターが仮想サービスを使用できるようにすることで、サーバー上で時間をスケジュールしたり、アプリケーションが依存している API に対する負荷シミュレーションのための広範な環境を構築したりする必要がなくなります。
  • リモートの VirtServer から自分のローカルの virt に virt をダウンロードして、独立して作業できるようにします。

 


 

モック データの管理と生成

 

一連の基準に基づいて長期にわたるテスト用のデータをオンザフライで生成します。 定義済みのデータ型を使用することで、仮想 API から応答を生成する機能をすばやく設定できます。

 

動的モック データを即座に生成

データベースにアクセスできない場合や、データベースに含まれている以上のデータが必要な場合のテストをサポートするために、データモデルを使用して仮想サービス応答をその場で生成します。

ReadyAPI Virtualization は、以下の最も一般的に使用されるデータ タイプを提供します:

識別データ タイプ

  • Name (名前)
  • Phone Number (電話番号)
  • E-mail
  • Social Security Number (社会保障番号)
  • Date and Time (日付と時間)

位置データ タイプ

  • Street Address (番地)
  • City (市町村)
  • State (州、県)
  • Country (国名)
  • United Kingdom Postcode (英国郵便番号)
  • United States ZIP Code (米国郵便番号)
  • IP Address (IP アドレス)

値データ タイプ

  • GUID
  • Integer
  • Real
  • String
  • Value
  • Boolean

カスタム データ タイプ

  • Custom
  • Custom String

 

データベースまたはファイルからのサードパーティ データのインポート

API に対する機能テストから直接得られるメリットが、virts に対するテストからも得られます。 ReadyAPI Virtualization を使用すると、自分の virt が応答に使用する外部データソースを識別できるため、アプリケーションのテストで実際の例をより正確に反映できます。 

データソースとしてこれらのフォーマットのどれでも使用できます:

  • データベース
  • JDBC
  • Excel スプレッドシート
  • XML ファイル
  • グリッド

データソースを特定したら、簡単なインターフェイスを使用してそれらのデータソースに含まれるプロパティを指定します。 リクエストがあなたの virt に渡されるとき、リクエスト パラメータに基づいて適切なコンテキスト特有のレスポンスを生成するためにこのデータソースを使うことができます。 これらのデータセットを変更すると、virt レスポンスが自動的に更新されます。

 


 

サーバー側の動作をシミュレート

 

完全なテストの柔軟性を得るために、ReadyAPI Virtualization を使用して、帯域幅の制約、エラー条件、および応答時間範囲を設定して特定の動作を設定します。

 

シミュレート

API に依存するアプリケーションをテストするための課題の 1 つは、アプリケーションのパフォーマンスに影響を与える可能性があるさまざまな条件をシミュレートできることです。 ReadyAPI Virtualization を使用すると、サーバーの条件をいくつでも設定できるので、アプリケーションの強度を検証して、最適ではない API 応答に対応することができます。

 

サーバー能力

サーバー構成をシミュレートするために、あらかじめ設定されたサーバーサイズから選択するか、スレッド容量と応答時間に独自のパラメーターを設定します。

 

ネットワーク

さまざまなネットワーク能力をシミュレートするために、接続速度、待ち時間、および混雑率を特定します。

 

エラー

API の失敗をシミュレートするためにエラー応答を設定します。

 


 

仮想環境を管理

 

ReadyAPI Virtualization の高性能ルーティング機能を使用して、トラフィックをモックとして記録し、障害分離を実行します。

 

リアルタイムのサービス記録と切り替え

高度なモックだけではなく、ReadyAPI Virtualization には高性能プロキシとして機能する機能が含まれています。 これにより、2 つの非常に重要な活動が可能になります:

 

仮想サービスへの記録

仮想サービスをルーティング モードに設定すると、ReadyAPI Virtualization が API または JDBC サービス レコーダーになり、実際のトラフィックに基づいて仮想サービスのアクションとエンドポイントが自動的に構築されます。 これにより、ディスクリプターがなくても仮想サービスを手動で作成しなくてすみます。 仮想サービスを早く構築するほど、優れたテストを構築し、その素晴らしいアプリケーションを早く出荷することができます。

 

実サービスと仮想サービス間の高速切り替え

ルーティング機能を切り替えると、リアルタイムで問題を迅速にテストおよび診断できます。 アジャイル ショップやDevOps ショップで特に役立ちます。ReadyAPI Virtualization を組み合わせて使用すると、モデル化、コーディング、および統合が非常に簡単になります。 パートナー、サードパーティの開発者、あるいは単にチームの他のメンバーからの問題のあるサービス呼び出しを視覚化して診断する必要があるときに、共有サービス (他人が使用するために VirtServer にデプロイされた仮想サービス) にも非常に役立ちます。

 

 

 

 

Jenkins は Jenkins プロジェクト (https://jenkins.io) に帰属し、Creative Commons Attribution-ShareAlike に基づいて利用しています。

 

ページトップへ