パフォーマンステストは、 負荷がかかったアプリケーションの速度、応答性、安定性を評価するためのテストの一種です。 アジャイルテストのパフォーマンス テスト の目的は、アプリケーションが予想される負荷の下で適切に動作することを確認することであり、アプリケーションのパフォーマンス関連 の問題 を見つけることを目的としています。 ページやアプリケーションがストレスを感じているときに発生する可能性のある抜け穴やボトルネックを特定するのに役立ちます。

ロードビューによるJMeterロードテスト

ロードビューでJMeterロードテストの制限を克服

パフォーマンス テストの種類

パフォーマンス テストにはさまざまな種類があり、予想されるビジネス ニーズに応じて使用できます。

 

ロードテスト

ロード テストでは、アプリケーションが予想外のユーザー ロードを実行できるかどうかがチェックされます。 目的は、パフォーマンスのボトルネックを特定することです。

 

ストレステスト

ストレス テストでは、極端なワークロードの下でアプリケーションをテストして、大量の トラフィックまたはデータ処理をどのように処理するかを確認します。 目的は、アプリケーションのブレークポイントを特定することです。

 

耐久試験

1つは、 ソフトウェア が長期間にわたって予想される負荷を処理できることを確認するためのものです。

 

スパイクテスト

スパイクテストは、生成された負荷の急激な大きなスパイクに対するソフトウェアの反応をテストします。

 

ボリュームテスト

目的は、さまざまな データベースボリュームの下でアプリケーションのパフォーマンスをチェックすることです。

 

スケーラビリティテスト

スケーラビリティ テストの目的は、負荷の増加をサポートするための “スケールアップ” の有効性を判断することです。 既存のシステムに容量を追加する計画を立てるのに役立ちます。

 

適切なパフォーマンス テスト ツールの選択

プラットフォームに必要なパフォーマンス テストの種類を決定した後、最も重要な問題は、どのツールを使用するかということです。 市場で利用可能なロードテストツールのトンがあり、オープンソースはほとんどなく、閉鎖されている人はほとんどいません。 しかし、要件に基づいて、人気のある主要なツールを以下で探し、複数の目的を果たし、パフォーマンステストから最良の 結果を得る のに役立ちます。

ガトリング、JMeter、LoadViewは、最も人気があり、Web サイト、内部/外部 ウェブ アプリケーション、APIなど、さまざまなアプリケーションセットのロードテストを実行するのに役立ちます。

 

ガトリングとは何ですか?

Gatling は、Scala、Akka、Netty をベースにしたオープンソースのロード テスト ツールです。 これは、ローカルマシンとクラウドサーバーで高性能で保守が容易なロードテストを作成して実行するのに役立ちます。 ガトリングは複数のオプションで使用することができ、ウェブサイトのパフォーマンステストのための自動シミュレーションを作成できる主要なケースの1つ、スクリプトを編集することができ、複数のパラメータで追加することができ、ガトリング構成は完全に自由に編集することができます。 また、HTTP プロトコルの優れたサポートを提供するため、HTTPサーバーをテストするための選択肢の1つになります。

 

ガトリングの利点

  • オープンソース. GatlingはScalaに基づくオープンソースのパフォーマンステストフレームワークで、人が読めるDSLを持ち、テストの作成と実行を容易にします。
  • コードの再利用性とバージョン管理 チームのコラボレーションを強化し、履歴の変更を簡単に追跡するガトリングソースコードにバージョン管理を導入できます。
  • マルチスレッド化: ガトリングは、NettyフレームワークとAkkaツールキットを使用して、設計上、分散され、完全に非同期化されたアクターモデルに基づいているため、Gatlingが各ユーザーに新しいスレッドを割り当てないようにします。 これにより、単一のスレッドを使用してユーザー体験のリストをシミュレートできます。
  • CI/CD 統合. ガトリングプロジェクトは、Maven、Gradleビルダーを使用して構築することができ、CI / CDパイプラインに簡単に組み込むことができます。
  • レポート. NewRelic、グラファナ、トーラスなどのリアルタイムトラッキングツールなどのツールと簡単に統合できます。
  • アサーション: また、統合されたアサーション API も提供され、パフォーマンス テストと共にさまざまな種類の機能チェックを実行できます。

 

ガトリングのデメリット

  • プロトコルのサポート: HTTP、WebSocket、サーバー側のイベント、および JMS (Java メッセージ サービス) のみをサポートします。
  • たくさんのスクリプト作成. ガトリングは純粋にコードベースなので、ガトリングに精通していない人にとってかなりの学習曲線になる可能性があります。
  • サポート材料の不足. JMeterのようなツールと比較して、より小さなユーザーベースがあり、多くのサポートドキュメントは利用できません。
  • テスト実行データ: 応答時間はテスト完了時にのみ表示でき、サードパーティのソリューションを使用する必要があります。

 

JMeterとは何ですか?

JMeterは、Apache Foundationの Java ベースのオープンソースパフォーマンステストツールであり、最も古いパフォーマンスツールの1つです。 Web アプリケーション、FTP アプリケーション、および HTTP バックエンド サーバーのパフォーマンス メトリックを測定します。 JMeterは、ウェブ サーバーにヒットする大量の仮想同時ユーザーを作成することで、サーバーの大きな負荷をシミュレートできます(JMeterの使用方法の詳細については、究極のガイドをご覧ください)。

 

JMeterの利点

  • オープンソース. JMeterはオープンソースソフトウェアであり、無償でダウンロードできます。 また、純粋な Java ベースのアプリケーションでもあります。 開発者は、ソースコードを使用して、要件に従って変更およびカスタマイズできます。
  • ユーザーフレンドリー. また、テスト計画の作成や、数回のクリックでテスト シナリオの追加に役立つ包括的な GUI も提供します。
  • サポート. ストレス テスト、分散テスト、Web サービス テストなどの機能性に関するテストをサポートします。
  • 包括的なドキュメント: JMeterは長い間存在してきたので、理解しやすく、テストをゼロからセットアップできる広範なドキュメントがあります。
  • 録音する 。 これにより、ブラウザ上でアクションを監視して記録し、その作成スクリプトに基づいて、多数の同時ユーザーで再実行することができます。
  • レポート. ダッシュボードレポートの生成をサポートし、実行結果を理解するのに役立つレポートがいくつか生成されます。

 

JMeterのデメリット

  • スクリプト作成. JMeterの要素と機能性に関する深い知識を持つ人が必要です。
  • プロトコルのサポート: Java スクリプトを実行できません。 AJAX、JavaScript、フラッシュなどの動的アプリケーションを構築するために使用される技術はサポートされません。
  • 実際のブラウザのサポート 実際のブラウザーで Web 要素をレンダリングしません。
  • 大規模なロード テストを実行しています。 多数のユーザーでテストを実行するには、広範な手作業が必要です。

 

ロードビューとは何ですか?

LoadView は、ユーザーが実際のブラウザからWebサイト、Webアプリケーション、ウェブサーバー、内部アプリケーション、ストリーミングメディアをテストすることを可能にする、完全に管理されたクラウドベースのロードテストツールです。 ブラウザーに 複雑な Web アプリケーションを記録 することで、テスト シナリオを作成できます。 最後からハードウェアを必要としない LoadView クラウドサーバーを使用して、geo 分散ロードテストを実行できます。

 

ロードビューの利点

  • 完全に管理されたクラウド テスト: LoadViewを使用している間、ロードテストを生成するためにサーバーやマシンを必要としませんが、内部インフラストラクチャのサポートを節約する完全なクラウドサポートを提供します
  • エブリステップウェブレコーダー. Web レコードの複雑な Web アプリケーションに機能を提供し、40 以上のデスクトップ/モバイルブラウザーとデバイスをサポートし、さらに、Flash、HTML5、Java、PHP、Ruby、Silverlight などのインタラクティブなコンテンツを作成するために使用されるテクノロジをサポートします。
  • 仮想負荷インジェクタ. 米国、カナダ、APAC、南米、ヨーロッパの15以上のゾーンのロードインジェクタサーバーを利用しているので、数百または数千人のユーザーで簡単にテストを実行できます。
  • ユーザー負荷の配分: これは、当社のウェブサイト上のトラフィックの大半に応じて、地理的に分散された負荷へのアクセスを提供します。
  • レポート. LoadView は、パフォーマンスの問題が発生した場所を正確に把握できる、概要レベルおよび要素レベルの詳細レポートを提供し、チームが改善の必要性を領域を迅速に特定して修正できるようにします。
  • CI/CD 統合と簡単なプロキシ セットアップ. Jenkins のような CI ツールとの簡単な統合をサポートします。
  • 監視プラットフォームと統合。 ロード テストの後、ユーザーはわかりやすいダッシュボードを使用して 、運用環境で Web ページ、サービス、およびアプリケーションを監視 できます。

 

機能の内訳

以下は、説明したツールの基本的な機能の違いを示すグラフです。 ユースケースや環境に応じて、これらのツールには、パフォーマンステストを実行する際にユーザーに提供するものがあります。

顔立ち

ガトリング Jメーター ビューを読み込む
テスト シナリオの作成 基本的な Scala および DSL 言語の理解に関する知識が必要です。 GUI は、スレッド グループを作成し、テスト シナリオを簡単に作成するのに役立ちます。 ユーザーフレンドリーな GUI は、要件に基づいてテスト シナリオを作成するのに役立ちます。
テストの実行 ロード テストは、ローカル コンピューターまたは専用サーバーから実行できます。 トラフィックの多い場合は、ローカル マシンまたは専用サーバーが必要です。 ハードウェアはブラウザベースであるため、LoadViewはテストを実行するための専用のクラウドサーバーを提供します。
地理分散ロード テスト テスト専用の場所に AWS または GCP サーバーをセットアップする必要があります。 テスト専用の場所に AWS または GCP サーバーをセットアップする必要があります。 Web サイトからほとんどのトラフィックが必要な場所からロード テストをホストする機能を提供します。
ドキュメントとサポート ガトリングでは、ドキュメントをよりよく理解するために、DSlとScalaに精通している必要があります。 JMeterは最も古く、成熟したツールであるため、最高のドキュメントを持っています。 LoadView には広範なドキュメントがあり、24 時間 365 日の通話サポートとライブ デモを提供しています。
プライシング オープンソースと無料 オープンソースと無料 ロード テストの実行に使用される専用のホストサーバーの LoadView 料金。
CI/CDジェンキンスとの統合 はい はい はい

 

 

ガトリング対JMeter対ロードビュー:結論

ロード テスト ツールで見てきたように、ロード テストのオプションが多数あることを確認できます。 無料のロードテストツール、有料ロードテストツールがあります。 これらの選択肢のすべてで、特定の状況に最適なロード テスト ツールを決定するのは困難です。 この記事では、これらのツールのそれぞれを区別する機能、それらの利点、相違点を見て、各ツールのツールのサポートを報告する CI/CD の統合について説明しました。 確かに無料のロード テスト ツールを使用でき、ジョブを完了するのに十分かもしれませんが、LoadView が提供するメリットは非常に大きいです。 LoadView と比較した他のロード テスト ソリューションの詳細については、「 代替案ページを参照してください。

今すぐ LoadView をお試しください無料試用版にサインアップして、最大 5 つの無料ロード テストを受けてください。 または、LoadView プラットフォームを完全にウォークスルーするために、LoadView エンジニアとライブ デモをスケジュール します。