負荷テストとは?そのやり方を分かりやすく解説

負荷テスト(Load Testing)は、ソフトウェアやシステムの性能を評価するために行われるテスト手法の一つです。本文では、一番使いやすくて直感的な負荷テストツールのApidogと最も有名な負荷テストツールのJMeterで負荷テストを行う方法を紹介します。

中村 拓也

中村 拓也

11 5月 2025

負荷テストとは?そのやり方を分かりやすく解説

負荷テストとは

負荷テスト(Load Testing)は、ソフトウェアやシステムの性能を評価するために行われるテスト手法の一つです。負荷テストでは、特定の負荷条件の下でシステムがどの程度のトラフィックや処理量を処理できるかを評価します。

負荷テストでは、通常、以下のような目的があります。

  1. 性能評価: システムの性能や応答時間を評価し、ユーザーがシステムを使用する際の体験を向上させるために問題を特定します。性能のボトルネックや瓶頸現象を発見することが目的です。
  2. スケーラビリティ評価: システムが負荷増加に対してどのようにスケーリングするかを評価します。追加のユーザーやトランザクションが増加した場合に、システムが効率的に処理できるかどうかを確認します。
  3. 安定性評価: 長時間の負荷条件下でシステムが安定して動作するかどうかを評価します。リソースのリークやメモリ不足、デッドロックなどの問題を特定するために行われます。

負荷テストでは、通常、ユーザーの予想される利用パターンやトラフィック量に基づいて、実際の負荷を生成するためのツールやスクリプトを使用します。これにより、システムの性能や振る舞いに関する情報を収集し、問題や改善点を特定することが可能となります。

負荷テストは、システム開発の早い段階から行われるべきであり、定期的な実施が推奨されます。これにより、システムのパフォーマンスや信頼性を向上させることができます。

負荷テストの評価指標

負荷テストの評価指標は、システムの性能や応答時間、負荷耐性などを測定するために使用されます。以下に一般的な評価指標のいくつかを示します。

APIの応答時間
Apidogでテストのスレッド数を設定

これらの評価指標は、負荷テストを通じてシステムの性能や耐性を定量化するために使用されます。また、負荷テストの結果から問題やボトルネックを特定し、改善点を見つけるための手がかりとなります。

おすすめ:使いやすい負荷テストツール

負荷テストを行うために、一番効果的な方法は、負荷テストツールを導入することになります。次は、一番使いやすくて直感的な負荷テストツールのApidogと最も有名な負荷テストツールのJMeterで負荷テストを行う方法を紹介します。

Apidog - 直感なUIで負荷テストを行う

ApidogはAPIの設計、開発、デバッグ、テスト、モックなどの機能を一体化した包括的なAPI管理ツールとして、非常に分かりやすいUIを提供しています。このUIのお陰で、非常に直感的な操作によって、負荷テストを行うことができます。それでは、次の操作手順を参照してみましょう。

button

ステップ⒈テストインスタンスの作成

Apidogを開き、自動テストモジュールから簡単にテストインスタンスを作成することが可能です。ここで任意のAPIをもテストステップを設定することもできますので、コレクションという制限もありません。

Apidogのテストケースを作成

ステップ⒉ワークフローを手動で調整

自分の業務に従って、ワークフローを作成:APIの呼び出しをテストステップとして簡単に追加し、これらのテストステップに対していくつかの条件を設定して、テストステップをどのような順で実行するかというワークフローを直感的なGUIで定義できます。

テストフローを調整

ステップ⒊パフォーマンステストの実行

右側のメニューで「負荷テスト」を選択して、負荷テストの実装環境、仮想ユーザー数、持続時間などを設定して、負荷テストを実装することができます。

パフォーマンステストの設定

仮想ユーザー数:実際の作業中で同時に操作を10個するユーザー数をシミュレートできます。「同時接続ユーザー数」とも呼ばれています。

持続時間:パフォーマンスか負荷テストの合計実行時間です。実行中に仮想ユーザーがテストインスタンス内のすべてのリクエストをループします。

Ramp-up期間:テスト持続時間の最初の何分間は、スレッドが並行のユーザー数を増やしつつ、設定された仮想ユーザー数まで増やしていきます。0に設定すると、テスト開始時から設定された仮想ユーザー数を利用して実行します。

負荷テストが終わると、「テストレポート」タブをクリックして、非常に詳しい負荷テストのレポートを取得したり、他人に共有したりすることができるようになります。

パフォーマンステスト実行中

また、過去に行った機能テストや負荷テストのレポートをここで確認できます。

テストレポートの取得と共有
button

また、Apidogは、JMeterのフォーマットとしてエクスポートすることもできますので、Apidogの負荷テスト機能が需要を満たさない場合、テストケースをJMeterのフォーマットとしてエクスポートすると、シームレースにJMeterでより高度な負荷テストを行うこともできます。

JMeterのフォーマットとしてエクスポート

JMeterで高度な負荷テストを行う

Apache JMeterは各種負荷テスト、性能テスト、機能テストを実行するためのJavaフレームワークです。Webアプリケーション、データベース、FTP、SMTP、SOAP、RESTなどを含む様々なプロトコルと技術をサポートし、テスト担当者がテストケースを設計、実行、分析するのに役に立ちます。

Apache JmeterのUI

JMeterで負荷テストを開始するには、先にエクスポートしたJMeterのファイルをJMeterにインポートすると、負荷テストの配置の手間を節約することができます。

JMeterで負荷テストを行うために、以下の手順を参照してください。

  1. JMeterのダウンロードとインストール: Apache JMeterの公式ウェブサイトからJMeterをダウンロードし、インストールします。
  2. テスト計画(Test Plan)の作成: JMeterを起動し、新しいテスト計画を作成します。テスト計画は、負荷テストの設定やシナリオ、スレッドグループなどを含む、負荷テストの基本的な構成要素です。(ここでApidogからエクスポートしたファイルをインポートしましょう。)
  3. スレッドグループの追加: テスト計画内にスレッドグループを追加します。スレッドグループは、ユーザーの振る舞いやトランザクションの挙動を定義します。例えば、同時にアクセスするユーザー数やループ回数を設定します。
  4. サンプラーの追加: スレッドグループに対してHTTPリクエストやデータベースクエリなどのサンプラーを追加します。これらのサンプラーは、実際のリクエストをシミュレートしてサーバーに送信します。
  5. リスナーの追加: テスト結果を収集するために、リスナーを追加します。リスナーは、テスト結果をグラフやテーブル形式で表示したり、ログに出力したりする役割を果たします。
  6. 負荷テストの設定: スレッドグループやサンプラーに対して、負荷条件や振る舞いの設定を行います。例えば、同時ユーザー数、リクエストの送信間隔、ランダムデータの生成などを設定します。
  7. テストの実行: テスト計画を保存し、テストを実行します。JMeterは、指定された負荷条件の下でリクエストを送信し、サーバーの応答を収集します。
  8. テスト結果の分析: テスト実行後、リスナーによって収集されたテスト結果を分析します。応答時間、スループット、エラーレートなどの評価指標を確認し、システムのパフォーマンスや挙動に関する洞察を得ます。

Explore more

初心者必読!ApidogでのPOSTリクエスト作成法

初心者必読!ApidogでのPOSTリクエスト作成法

Apidogを使用してPOSTリクエストを作成するプロセスは簡単で、API開発とテストを合理化する幅広い機能を提供します。初心者から経験豊富な開発者まで、Apidogは強力なツールとして役立ちます。

21 10月 2024

手動テスト完全解説:品質を保証する最後の砦

手動テスト完全解説:品質を保証する最後の砦

手動テストはソフトウェアテストライフサイクルに欠かせない要素であり、アプリケーションの品質、使いやすさ、機能を保証します。自動化の利点がある一方で、手動テストは機械では得られない貴重な洞察と創造性を提供し、包括的なテスト戦略として重要です。

18 10月 2024

PostmanでHTTP 405 メソッドなしエラーを修正する方法

PostmanでHTTP 405 メソッドなしエラーを修正する方法

HTTP 405エラーコードは、無効なAPIキーまたはアクセストークンを使用してサーバーにアクセスしようとすると発生します。この記事では、405エラーについて学び、それを修正する方法について、段階的に解説します。

11 8月 2024

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる