API のロード テストの長所と短所を理解するには、まずロード テストの概念を理解する必要があります。 まず、負荷テストの近親者であるパフォーマンス テストについて説明します。
パフォーマンステストとは何ですか?
パフォーマンス テストは、非機能ソフトウェア テスト アプローチの一種であり、さまざまなワークロードでの速度、スケーラビリティ、応答性、安定性の観点からアプリケーションのパフォーマンスを評価します。 これは、高品質のユーザーエクスペリエンスを保証するための重要な段階です。
残念ながら、パフォーマンステストは、機能テストが完了した後、多くの場合、コードのリリース準備が整った後にのみ実行する別のプロセスと見なされることがよくあります。 これは問題につながる可能性があるため、パフォーマンス テストを API または ウェブ サイトの開発プロセスの必須部分と見なすと便利です。 言い換えれば、パフォーマンステストは後付けであってはなりません。
パフォーマンステストの目的には、プログラム出力、処理速度、データ転送速度、ネットワーク帯域幅の使用、最大同時ユーザー数、メモリ使用率、ワークロード効率、およびコマンド応答時間の評価が含まれます。
パフォーマンステストに関心を持つ必要がある理由
パフォーマンス テストは、 ウェブ サイトであれアプリであれ、インターネット向けのソフトウェア開発で行うすべてのことに組み込まれる必要があります。 パフォーマンス テストでは、次のことができます。
- アプリケーションがパフォーマンス基準に準拠しているかどうかを確認します (たとえば、特定のシステムで最大 1,000 人の同時ユーザーを処理できる必要があります)。
- アプリケーションの計算上のボトルネックを見つけます。
- ソフトウェア プロバイダーが提供すると主張するパフォーマンス レベルが正確かどうかを確認します。
- 2つ以上のシステムのパフォーマンスを評価し、最適なシステムを決定します。
- 交通量の多い時間帯のゲージの安定性。
ロード テストとは
ロード テストは、予想される実際のストレスの下でアプリケーションのパフォーマンスを評価するために使用する主要なパフォーマンス テスト方法です。
プログラムにアクセスする複数の同時ユーザーの負荷をシミュレートするために、仮想ユーザーが生成されます。 さまざまなパフォーマンス指標を評価し、シミュレートされたユーザー負荷を介してパフォーマンスのボトルネックを特定します。
ロード テストを通じて、実際のユーザーとまったく同じように、サーバーにさまざまな要求を送信するスクリプトを記述できます。 これらのツールは、次のようなさまざまな設定も提供します。
- 仮想ユーザーまたはスレッドの数。
- ロード テストの長さ。
- パフォーマンス特性。
- ロード テストを実行し、スクリプトを作成してテスト パラメーターを設定した後、テスト結果を確認する場合があります。
負荷テストの利点と欠点
まず、ロード テストの利点のいくつかを詳しく見てみましょう。
- 運用環境にデプロイする前に、パフォーマンスのボトルネックを検出するのに役立ちます。
- これは、考えられる最良の 方法でインフラストラクチャをセットアップするのに役立ちます。 余分な機器を終了すると、インフラストラクチャのコストを削減できます。 インフラストラクチャが不十分な場合は、追加のマシンを設置することができます。
- パフォーマンス に対処する必要がある要求を検出して分離することで、ダウンタイムの可能性を減らします。
- これは、アプリケーションの有効性における保証と信頼性の感覚を伝えます。
- 多くのロード テスト ツールにはライセンスが必要であり、これにはかなりの費用がかかる可能性があります。
- JMeterのようなフリーでオープンソースの技術でも、可能な限り本番環境に近い環境を構築する必要があります。 これにより、さらに費用が発生する可能性があります。
- ロード テスト スクリプトを記述するには、ツールのサポートするスクリプト言語に習熟している必要があります。
- 誤ったパフォーマンスの問題は、ロード テストの計画またはスクリプトが正しく設計またはプログラムされていないことが原因である可能性があります。 適切なテスト設計には、かなりの時間とリソースが必要になる場合があります。
これらの欠点は有効ですが、API のロード テストを実行するための堅実で費用効果の高い方法があります。 独自のツールである LoadView を見てみましょう。
ドットコムモニターによるロードビュー
LoadView を使用すると、DevOps チームは、フル マネージド クラウドからの同時接続を通じて、Web サイト、 ウェブ アプリケーション、API のストレス テストを行うことができます。
このサービスは有料ですが、個人にとって十分な基本プランの費用はわずかであり、大企業により適した高額パッケージのオプションを提供します。
また、サインアップのための無料のテストも受けることができ、これは少なくとも2つのプロジェクトのAPIテストをサポートするのに十分です。
既存のAPIがあるとします。 LoadView テストを使用して最初のロード テストを 5 つの手順で実行する方法を次に示します。
ステップ1:登録/ログイン&クレジットの受け取り
ここ をクリックして、 ロードビューテストのホームページをご覧ください。 そこには、3つの異なるタイプのロードテストサービスが表示されます。
- ウェブページ
- ウェブアプリケーション
- ウェブサービス/API
サインアップまたはログインするように求められます。 ログインすると、実行できる最大5つの無料テストを受け取ったことがわかります。
登録すると、このウィンドウに移動します。
手順 2: 新しいロード テスト デバイスを作成する
「+新しいテスト」ボタンをクリックします。 以下の画面に移動します。
API に応じて、上記の一覧から関連するロード テストの種類を選択します。 このデモでは、REST Web API があるため、REST Web API ロード テストの種類を使用します。
手順 3: 負荷テスト デバイスのタスク構成
タスク設定ウィンドウが表示されます。 デバイスのタイトルは、「無題」から好きなように変更できます。 デバイスの説明でテストされた API への参照も提供することをお勧めします。
API がローカルで動作するようになったので、HTTPS ではなく HTTP プロトコルを使用する必要があります。
右上隅の詳細スライダーをオンにすると、ラジオボタンが表示され、使用するプロトコルを選択できます。 この場合、[HTTP] を選択し、ホスト名フィールドに API のドメインとルートを入力します。
注: 上記の手順は、ローカルで作成された API を対象としています。 アクティブな API がある場合は、HTTPS プロトコルを選択する必要があります。
「パラメータの追加」をクリックした後、パラメータ名に「IP」と入力し、パラメータ値に「106.201.85.245」と入力します。
上記の手順を正しく完了すると、タスク設定 URL フォームは次のようになります。
下にスクロールして設定ウィンドウにアクセスします。 このデモ API は get 要求のみをサポートしているため、既定の要求の種類である GET のままにしておくことができます。
ステップ 4: シナリオを作成する
ユースケースによって、このセクションへのアプローチ方法が決まります。 REST API では、事前定義された変動ユーザー数の負荷ステップ曲線を使用します。 このデモ API は初歩的なものであるため、詳細なレポートは必要ありません。
こちらの LoadView ナレッジ ベースにアクセスして、シナリオの構築の詳細を確認できます。
ステップ5:最終報告書
これで、API の負荷テストが実施されます。 これには通常7〜10分かかります。
レポートを同時に確認することも、後でメールで詳細レポートを受け取ることもできます。
LoadView テスト プラットフォームについて詳しく知りたいですか? 今すぐ 無料試用版 とロード テストの専門家との 1 対 1 のデモ にサインアップすることを検討してください。 私たちはあなたから聞いてうれしいです。