how test website performance using smartmeter
パフォーマンステスターであることは、ソフトウェアテストの分野で着実に最もホットな専門分野の1つになりつつあります。その理由は、私たちの社会が満開になり、デジタルパフォーマンスがすべての中心にあるためです。顧客体験、ブランドイメージ、収益創出、その他のビジネスの重要な部分です。
イアン・モリノーが有名にそれをアート・オブに入れているように アプリケーションパフォーマンステスト :「エンドユーザーがあなたのウェブサイトのパフォーマンスが悪いと感じた場合、彼女の次のクリックはおそらくyour-competition.comにあります。」
=> 完全なパフォーマンステストチュートリアルシリーズについては、ここをクリックしてください
では、どのようにパフォーマンスをテストできますか?一言で言えば、Webサイト(または基本的にすべてのITシステム)のパフォーマンステストと最適化には、特定の負荷をかけ、結果を測定し、変更を加えて繰り返すことができる必要があります。これを行うには、パフォーマンステストツールを使用してテストシナリオを作成します。テストシナリオは、多数の仮想ユーザーによって自動的に実行されます。
学習内容:
SmartMeter.ioハンズオンレビューチュートリアル
選択できるツールはたくさんあります 、それぞれがパフォーマンステストに向けたさまざまな機能とアプローチのセットを提供します。今日は、そのようなツールの1つを詳しく見ていきます– SmartMeter.io 。
SmartMeter.ioとは何ですか?
これは、すべてのパフォーマンスと負荷テストのニーズをカバーするために作成されたデスクトップアプリケーションです。
現在のパフォーマンステストツールの状況を見ると、無料のツールは単純すぎるか面倒であり、多くの手作業が必要であることが明らかです。一方、プロのツールは、過度に複雑で、時代遅れで、高価になる傾向があります。
このツールは、デファクトオープンソース標準のJMeterを再考することにより、これら2つの世界の長所を手頃な価格で組み合わせる方法を目指しています。
ツールの作成の背後にある彼らの動機について開発者を引用すると、次のようになります。 JMeter それがすべての人に自由に提供するもののために、私たちはしばしば、よりスマートに、より速く、より直感的に、あるいは完全に自動化されたものに行き詰まったり、時間を無駄にしたりすることに悩まされました。」
ツールを評価する最良の方法は実際に使用することなので、それを手に入れましょう。
インストール
このツールは、Windows、Linux、およびMacOSで使用できます。 ここからツールをダウンロードできます 。
これは、下の図に示されているすべての主要なプラットフォームで使用できます。
ツールを初めて起動すると、ディスクからライセンスファイルを選択するように求められます。ライセンスをまだお持ちでない場合は、表示されたリンクをクリックして価格設定オプションを確認するか、をクリックして無料トライアルを取得できます。 無料評価 ボタン。
その後、すべての準備が整います。
以下は、ライセンスを購入するか、無料トライアルをダウンロードできるライセンス画面の例です。
最初のテストを作成する
パフォーマンステストの基本的なワークフローは、3つのステップで構成されています
- テストの作成
- テスト走行
- テストレポート
SmartMeter.ioでこれを行う方法を分析してみましょう。
テストの作成:テストシナリオの記録
テスト作成の最初のことは、テストシナリオを記録することです。テストシナリオは、仮想ユーザーがテストで実行することになっているアクション(テストステップ)を決定します。これらは、特定のページへのアクセス、ログイン、注文、支払いなどの任意の組み合わせにすることができます。
このツールには、レコーダーと呼ばれる特別なコンポーネントが含まれているため、テストシナリオを非常に簡単に作成できます。それがどのように機能するか見てみましょう。
ようこそ画面で、 レコーダを起動します ボタン。これにより、レコーダーが開きます。
以下は、ウェルカム画面からレコーダーを起動する方法の例です。
ザ・ 新しいテストを作成する ウィンドウが表示されます。基本的なテスト記録のために設定する必要がある2つの値があります– テスト名 そしてその テストしたサイトのURL 。
他の設定は変更しないでおくことができます。クリックして続行 録音を開始 ボタンをクリックすると、レコーダーのメインウィンドウが開きます。
以下は、レコーダーの初期設定の例です。
レコーダは2つの主要部分に分かれています。左側の部分にはトランザクションのリストが含まれています。これは、関連するすべてのHTTPリクエストなどを含むテストシナリオ内のステップです。レコーダーの右側の部分には、新しいトランザクションを記録できる埋め込みブラウザーウィンドウが含まれています。
新しいトランザクションを作成するには、左上隅のプラスボタンをクリックしてから、埋め込みブラウザでアクションを実行します(つまり、ホームページをクリックします)。
Javaでリンクリストを宣言する方法
テストシナリオで実行するすべてのトランザクションを記録したら、( テストを保存 ボタン。記録されたテストをエディターで開くかどうかを尋ねられたら、をクリックします はい 。
以下は、トランザクションとブラウザを含むRecorderのメインウィンドウの例です。
テストの作成:シナリオパラメータの編集
記録されたテストシナリオは、テストで実行されるアクションを定義します。エディターでは、テストの他の重要なパラメーターを設定できます。
シナリオ記録の最後のステップとしてエディターを開きました。テストスクリプトを選択し、をクリックして、ようこそ画面からエディターを開くこともできます。 シナリオの作成/編集 ボタン。
以下は、ウェルカム画面からエディターを起動する方法の例です。
エディタは、残りのテストを設計できる場所です。
この例では、最も重要なパラメーターは次のとおりです。
- ターゲットの同時実行性
- ランプアップ時間
- ランプアップ手順
- 目標レート時間を保持する
ターゲットの同時実行性 –この数は、テストで生成される仮想の数を定義します(技術的には、テスト中に並行して実行されるスレッドの数です)。設定する仮想ユーザーが多いほど、テスト対象のシステムの負荷が高くなります。
ランプアップ時間 –すべてのテストはゼロ仮想ユーザーから始まります。この数値は、全負荷に達するまでにかかる時間を定義します。
ランプアップ手順 –入力すると、仮想ユーザーがバッチで追加されます。これらのバッチまたはステップの数を指定できます。入力しない場合、仮想ユーザーは徐々に追加されます。
APIテストの面接の質問と回答
目標レートを保持する時間 –この数値は、生成された仮想ユーザーの最大数に達した後、テストを続行する期間を指定します。
これらのパラメータを設定するには、をクリックします 仮想ユーザー ウィンドウの左側で、必要に応じてパラメータを設定します。テスト設定を視覚化する便利なチャートもあります。
以下は、エディターウィンドウと基本設定の例です。
((注意:画像をクリックすると拡大表示されます)
テスト走行
テストシナリオの記録と設定が完了したら、テストを開始できます。赤い矢印アイコンをクリックすると、エディターから直接テストを開始できます。
以下は、エディターからテストを開始する方法の例です。
保存したテストをウェルカム画面から選択して開始することもできます。 テストスクリプト ドロップダウンメニューをクリックして、 テストを開始します ボタン。
以下は、ウェルカム画面からテストを開始する方法の例です。
テストが開始されると、いわゆるランナーウィンドウが表示されます。しばらくすると、最初の結果が到着すると、グラフにデータが入力され始めます。
ウィンドウの左側には、他のメトリック(リスナーとも呼ばれます)があります。これらをウィンドウの主要部分にドラッグアンドドロップできます。
右上隅には、テストの期間、警告、エラーの数、現在テストに存在する仮想ユーザー(スレッド)の数など、他のリアルタイムメトリックがあります。
以下は、ランナーウィンドウでのテスト実行の例です。
エラーが多すぎる場合など、テストが終了する前にテストを停止することを決定できるため、結果をリアルタイムで確認すると便利です。テストを終了するには、左上隅にある停止ボタンをクリックします。
以下は、テスト実行を強制的に停止する例です。
テストレポート
テストレポートは、システムパフォーマンスの状態を分析し、潜在的なボトルネックを発見することを可能にするため、パフォーマンステストの重要な部分です。これは、結局のところ、パフォーマンステスターの目的です。
SmartMeter.ioでは、テストレポートはテストの終了時に自動的に生成されます。テストが完了したら、左上隅にあるレポートアイコンをクリックするだけです。
テストが完了した後のテストレポートの生成:
レポートには、多くの統計値とグラフが含まれています。次のようなメトリックに関する情報を提供します。
- 1秒あたりのヒット数
- 応答時間
- 応答コード
- 仮想ユーザー(スレッドの状態)
- 1秒あたりのトランザクション数
- バイトスループットなど…
SmartMeter.ioレポートには、これらのメトリックを互いに簡単に比較し、いつでもそれらの関係を判断するのに役立つターゲットツールが含まれています。たとえば、1秒あたりのトランザクション数を仮想ユーザーおよび応答時間と比較できます。
たとえば、1秒あたりのトランザクション数を仮想ユーザーおよび応答時間と比較できます。
前述したように、トランザクションは基本的に、ホームページへのアクセス、製品の購入、ログインの失敗または成功などのテストシナリオのステップです。完璧な場合、2番目のグラフあたりのトランザクションは次の数と同じように増加します。仮想ユーザー。
そうでない場合は、ターゲットツールを使用してグラフ値を比較するだけで、システムが応答が遅くなり始めるまでにかかったユーザー数を判断できます。そして、これは結果分析の可能なケースの1つにすぎません。
以下は、レポートのターゲットツールの例です。
レポートには傾向分析機能も組み込まれています。さまざまなテスト実行の結果を一目で比較することができます。
これは、パフォーマンステストの典型的な使用例です。テストが行われ、開発者による関連する変更が行われた後、改善があったかどうかをテストすることが重要です。
傾向分析機能により、この比較は非常に簡単になります。ただし、個々のテスト実行のテスト設定は変更しないでおく必要があります。
以下はトレンド分析機能の例です
結論
それで、SmartMeter.ioは、この投稿の冒頭で述べたように、その約束を果たしていますか?
このツールは一見気が遠くなるように見えるかもしれませんが、実際には、パフォーマンステストプロセスを複雑かつ徹底的かつ簡単にするためのさまざまな機能を提供します。
この簡単な実践的なレビューは、SmartMeter.ioが実行できることの表面をかろうじてかじっただけであることに注意することが重要です。主な目標は、何もない状態から実際の結果に至るまでに何が必要かを確認することでした。結局のところ、そうするのにほとんど時間と労力はかかりません。
これは主に、ブラウザをクリックするだけでテストシナリオを作成できるRecorderモジュールのおかげです。同じことが、(JMeterユーザーなら誰でも知っているように)信じられないほどの時間を節約できる高度な自動レポート機能にも当てはまります。
全体として、SmartMeter.ioは、テスト初心者と専門家の両方にとって非常に説得力のある選択を行い、その価格に大きな価値を提供します。あなた自身の決心をするための最良の方法は 自分で試してみてください 。
ご質問/ご提案がございましたらお知らせください。
=> 完全なパフォーマンステストチュートリアルシリーズについては、こちらをご覧ください
推奨読書
- Bugzillaチュートリアル:欠陥管理ツールのハンズオンチュートリアル
- 初心者向けの詳細なEclipseチュートリアル
- qTestテスト管理ツールの実践的なレビュー
- TestLodgeテスト管理ツールのレビュー
- バックログバグ追跡ツールハンズオンレビューチュートリアル
- PractiTestテスト管理ツールハンズオンレビューチュートリアル
- テストケースラボツールを使用してテストケースを簡単に管理する方法(ハンズオンレビュー)
- TestProjectテスト自動化ツールハンズオンレビューチュートリアル