JMeterのアサーションとは何か?
アサーション(assertion)とは、テストにおいては「●●であること」とか「●●すること」のような、つまり何かの確認、テストの合否チェックすることを意味します。
JMeterにもアサーション機能があり、例えば「何秒以内にサーバーからの応答が返ってきていること」みたいなことを確認 / チェックでき、
サーバーからのレスポンスが指定した秒数より遅い場合、NGとして知らせてくれます。
Webサイトのテキスト表示をチェックしてみる
では、具体的にJMeterでのアサーションの作り方を解説していきます。
ここではWebサイト(このブログ Test Hack)トップページへHTTPリクエストを投げ、トップページにある「ソフトウェアテスト技術 / IT技術 / Tips 解説」が表示すること、をチェックするアサーションを作ってみたいと思います。
1 まずは「テスト計画」を右クリック -> 追加 -> Thread (Users) -> スレッドグループ でスレッドグループを作ります
2 スレッドグループ を右クリックし -> 追加 -> サンプラー -> HTTP リクエスト を選択
3 Test Hack トップページへリクエストを投げる設定を「HTTP リクエスト」画面で行います
4 HTTPリクエスト を右クリック -> 追加 -> アサーション -> アサーション を選択
5 次に「●●のテキストが表示されていること」チェックする設定をアサーション画面でしていきます。
「テストするレスポンスフィールド」は「テキストのレスポンス」を選択
「パターンマッチングルール」は、「含む」を選択
「テストパターン」のブロックで「追加」ボタンをクリックし、チェックするテキスト「ソフトウェアテスト技術 / IT技術 / Tips 解説」のテキストを入力
6 次に、実行した際の結果を表示させる為のリスナーを追加します。
HTTPリクエストを右クリック -> 追加 -> リスナー -> 結果をツリーで表示 を選択
7 以上の設定を完了し、テストを実行すると「結果をツリーで表示」画面で結果を確認できます
上記はアサーションがOKでテストが通った場合の表示ですが、
アサーションがNGの場合は以下のように表示します。
以上、JMeterを使ってWebサイトに表示しているテキストをチェックする方法でしたー