SilkPerformer
®2010 R2
Web 負荷テスト チュートリアル
4 Hutton Centre Dr., Suite 900 Santa Ana, CA 92707
Copyright 2010 Micro Focus (IP) Limited. All Rights Reserved. SilkPerformer には、 Borland Software Corpo-ration の派生著作物が含ま れて いま す。 Copyright 1992-2010 Borland Software Corporation (a Micro Focus company).
MICRO FOCUS、 Micro Focus ロ ゴ、 ブ ラ ン ド名および製品名はすべて、 Micro Focus (IP) Limited ま たはそ の関連会社の米国、 英国、 およびその他の国における商標または登録商標で す。
BORLAND、 Borland ロ ゴ、 および SilkPerformer は、 Borland Software Corporation ま たはその関連会社の 米国、 英国、 およびその他の国における商標または登録商標で す。
その他のブ ラ ン ドまたは製品名は、 その版権所有者の商標または登録商標で す。 2010年 3 月
目 次
はじめに
1
概要 . . . . 1 SilkPerformer . . . . 2 サンプ ル Web アプ リ ケーショ ン . . . . 3第 1 章
負荷テスト プロジェ ク ト の定義
5
概要 . . . . 5 負荷テスト プ ロジェ ク ト を 定義する . . . . 6第 2 章
テスト スク リプト の作成
9
概要 . . . . 9 負荷テスト スク リ プト を 作成する . . . 10 生成さ れたスク リ プト を 試行する . . . 14第 3 章
テスト スク リプト の分析
17
概要 . . . 17 TrueLog Explorer での視覚的分析 . . . 17 要約レ ポート を 表示する. . . 20 エラーを 検索する . . . 23 ページ統計値を 表示する. . . 24 記録 TrueLog と 再生 TrueLog を 比較する . . . 28第 4 章
テスト スク リプト のカスタマイズ
33
ベース ラ インを 検索する . . . . 59 ベース ラ インを 確認する . . . . 63第 7 章
監視テンプレ ート の設定
69
概要 . . . . 69 監視テ ンプレ ート を 設定する . . . . 69第 8 章
ワーク ロードの定義
77
概要 . . . . 77 ワーク ロー ドを 定義する . . . . 80第 9 章
テスト の実行と監視
85
概要 . . . . 85 負荷テ スト を 実行する . . . . 86 テ スト を 監視する. . . . 88 サーバーを 監視する . . . . 93第 10 章
テスト 結果の検討
95
概要 . . . . 95 TrueLog On Error での作業. . . . 96 概要レ ポート を 表示する . . . 100 グラフ を 表示する. . . 112索 引
117
はじめに
チュ ート リアルについて Web 負荷テス ト チュ ート リ ア ル では、 SilkPerformer を 使用し て、 Web 負荷 テス ト を 設定および実行する方法を 説明し ます。 こ の 「はじめに」 の章には、 次のセク ショ ンが あり ます :
概要
Web 負荷テス ト チュ ート リ ア ル は、 SilkPerformer を 利用し た負荷テス ト の 作業に、 よ り 簡単に慣れら れる よ う 、 ま た でき るだけ早く 作業を 立ち上げ稼 働さ せら れる よ う 、 記述さ れて いま す。 本書は、 ユーザーが、 SilkPerformer の容易な操作性を 最大限に利用し 、 e ビジ ネス の負荷テス ト に最適な本 ツー ルの最先端機能を 使いこ なせ る よ う 、 支援し ま す。 メ モ : 本書では、 プロ ト コ ル レ ベ ル (HTTP/HTML) での Web アプ リ ケーショ ンの負荷テス ト について説明し ま す。 セク ショ ン ページ 概要 1 SilkPerformer 2 サンプ ル Web アプ リ ケーショ ン 3SilkPerformer
SilkPerformer
SilkPerformer は、 本業界で最も 強力で、 し かも 使いやすい、 エンタ ープ ラ イ ズ ク ラ ス の負荷 / 耐久テス ト ツー ルです。 視覚的なス ク リ プト生成技術、 および、 数千人の ユーザーが同時利用する複数の アプ リ ケーショ ン環境を テス トでき るそ の能力に よ り 、 規模や複雑さ に関わら ず、 デプロ イ する前に、 開発中の エンタ ー プ ラ イ ズ アプ リ ケーショ ンの信頼性、 パフォ ーマ ンス 、 拡張性な どを 、 徹底的 にテス トするこ と が可能にな り ま す。 根本原因解析用の最強な ツー ルや管理レ ポートを 利用し て、 問題を 切り 分けし 、 迅速に決断するこ と で、 テス ト サ イク ルを 最小化し 、 市場へリ リ ース するま での時間を 短縮するこ と ができ ま す。 利点 エンタ ープ ラ イ ズ アプ リ ケーショ ンの拡張性、 パフォ ーマ ンス 、 および信頼性 を 確か なも のに SilkPerformer は、 エンタ ープ ラ イ ズ アプ リ ケーショ ンのパフォ ーマ ンス を 、 さ ま ざま な ワーク ロ ー ド シ ナリ オや動的な負荷条件において、 内部の視点だけで なく エン ド ユーザーの視点か ら も 測定するこ と に よ り 、 その アプ リ ケーショ ンの 品質を 確か なも のと し ま す。 開発サ イク ルの早い段階での リ モート コ ンポーネント のテス ト を 可能に 開発サ イク ルの早い段階で (ク ラ イ アント アプ リ ケーショ ンが構築さ れる前で でも )、 リ モート コ ンポーネントの機能性、 相互運用性やパフォ ーマ ンス を テス トするこ と に よ り 、 多層エンタ ープ ラ イ ズ アプ リ ケーショ ンにおけ る不具合の コ ス ト を 、 激減さ せ るこ と ができ ま す。 ポ イ ント &ク リ ッ ク イ ンタ ーフ ェ イス を 使って調査するこ と に よ り 、 Web サー ビス や .NET リ モート オブジ ェ ク ト 、 EJB、 Java RMI オブジ ェ ク ト用のテス ト ド ラ イバを 、 迅速に生成するこ と ができ ま す。 ま た代わり に、 開発者が記述し た、 同時実行テス トのための ユニッ ト テ ス ト ド ラ イバを 再利用し た り 、 SilkPerformer の Visual Studio .NET Add-In を 利用 し て、 Java や他の .NET 言語 (C# や VB .NET な ど) で、 新し いテス ト ケース を 直接作成するこ と も でき ま す。 迅速な解決に向けて容易に問題を 突き 止め る HTML、 XML、 SQL、 TCP/IP、 および UDP を ベース と し たプロ トコ ル データ に 対する独自技術であ る SilkPerformer の TrueLogTMに よ り 、 エン ド ユーザーの視点 か ら の完全視覚化さ れた根本原因解析機能を 提供し ま す。 TrueLog は、 HTML ページ (すべての埋め込みオブジ ェ ク トも 含む) に対する負荷テス ト時にユー ザーが送受信するデータ を 、 視覚的に再現し ま す。 こ れに よ り 、 ユーザーは、 負 荷テス トでの エラー発生時にアプ リ ケーショ ンの動作を 視覚的に分析するこ と が でき ま す。 さ ら に、 詳細なレ ス ポ ンス タ イマー統計は、 アプ リ ケーショ ンが運 用に入 る前に、 「サー ビス 内容合意書」 で見逃さ れた根本原因を 明ら かにする助 けと な り ま す。プロジェ ク ト の再利用 SilkPerformer の拡張 ワーク フ ロ ーは、 SilkCentral Test Manager と の統合を 深め、 単純化し ま す。
サンプ ル WEB アプ リ ケーショ ン
サンプル Web アプリケーション
SilkPerformer の サンプ ル Web アプ リ ケーショ ンが ShopIt です。 ShopIt は、 シ ン プ ルな e コ マース Web サ イト を シミ ュ レ ート するも ので、 オン ラ イ ン購入のシ ミ ュ レ ーショ ンに使 用でき るキャ ンピ ン グ用品カ タ ロ グを 備 えて いま す。 こ の ア プ リ ケーショ ンを 使用すると 、 SilkPerformer の Web アプ リ ケーショ ン機能を 試 すこ と ができ ま す。 ShopIt V 6.0 セッ ト アッ プは次の場所か ら可能です。 • SilkPerformer イ ンス ト ー ル CD (\Extras\ShopItV60.exe) • SilkPerformer の ダ ウ ンロ ー ド場所 (http://www.borland.com/downloads/ download_silk.html) イ ンス ト ー ル プロ セス に関する詳細情報については、 『SilkPerformer イ ンス ト ー ル ガ イ ド』 を 参照し て く ださ い。 ShopIt V は、 不明な Web リ ンク (商品の在庫切れが原因) やセッ ショ ン エラー な どの エラーを 生成する よ う に作ら れて いま す。 アプ リ ケーショ ンがエラーなし で動作する よ う にな るには、 ス ク リ プト を カ ス タ マ イ ズする必要が あり ま す。 詳 細については、「セッ ショ ン処理を カ ス タ マ イ ズする」を 参照し て く ださ い。
1
Chapt e r 1負荷テスト プロジェクトの定
義
はじめに 本章では、 SilkPerformer において、 負荷テス ト プロ ジ ェ ク ト を 定義する方法に ついて説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
SilkPerformer の負荷テス ト 実施におけ る最初のス テッ プは、 負荷テス ト プロ ジ ェ ク ト の基本設定を 定義するこ と です。 プロ ジ ェ ク ト には名前を 付け、 必要に 応じて簡単な説明を 追加するこ と ができ ま す。 テス ト 対象 アプ リ ケーショ ンの種 類は、 最も 重要であ るデータ ベース や分散アプ リ ケーショ ンを 含む、 今日の e ビ ジ ネス で遭遇する イ ンタ ーネッ ト や Web 上に あ るも のか ら 幅広く 指定でき ま す。 指定し た設定は、 特定の負荷テス ト プロ ジ ェ ク ト に関連付けら れま す。 プロ ジ ェ セク ショ ン ページ 概要 5 負荷テス ト プロ ジ ェ ク ト を 定義する 6負荷テ スト プ ロジェ ク ト を 定義する
負荷テスト プロジェクトを定義する
サンプ ル負荷テス ト プロ ジ ェ ク ト を 作成する際の最初の ス テッ プは、 プロ ジ ェ ク ト の名前およびテス ト 対象のアプ リ ケーショ ン種類を 指定し て、 プロ ジ ェ ク ト を 定義するこ と です。 手順 : 負荷テスト プロジェ ク ト を 定義するには : 1 SilkPerformer ワーク フ ロ ー バーの [ こ こ か ら 開始する ] ボタ ンを ク リ ッ ク し ま す。 2 [ ワーク フ ロ ー - プロ ジ ェ ク ト の概要設定 ] ダ イ アロ グが開き ま す。 プロ ジ ェ ク ト の名前 (Shopit_JA な ど) を 、 [ プロ ジ ェ ク ト 名 ] フ ィ ー ルド に 入力 し ま す。 3 プロ ジ ェ ク ト の説明を 、 [ プロ ジ ェ ク ト の説明 ] フ ィ ー ルド に入力 し ま す (「サンプ ル アプ リ ケーション "ShopIt" を 使った Web チュ ート リ ア ル」 な ど)。負荷テ スト プ ロジェ ク ト を 定義する
4 [ アプ リ ケーショ ンの種類 ] フ ィ ー ルド で、 [Web ビジ ネス ト ラ ンザク ショ
ン (HTML/HTTP)] を 選択し ま す。
メ モ : Flash Remoting アプ リ ケーショ ンの負荷テス ト を 行いた い場合、 詳し い情報については、 ド キュ メ ント 『Advanced Concepts』 の 「Load
Testing Flash Remoting Applications」 の章を 参照し てく ださ い。
メ モ : WebDAV アプ リ ケーショ ン (Microsoft Outlook Web Access) の 負荷テス ト を 行いた い場合には、
[ アプ リ ケーショ ンの種類 ] フ ィ ー ルド において 、 そのま ま [WebDAV (MS Outlook Web Access)] を 選択し ま す。 手順は、 他の Web ビジ ネス ト
ラ ンザク ショ ン (HTTP) を 負荷テス ト するのと 同一です。
2
Chapt e r 2テスト スクリプトの作成
はじめに 本章では、 負荷テス ト ス ク リ プト の モデリ ン グ、 および TryScript 実行に よって テス ト ス ク リ プト を 試行する方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
負荷テス ト ス ク リ プト を 作成するための最も 簡単な方法は、 SilkPerformer Recorder を 使用するこ と です。 Recorder は、 ト ラ フ ィ ッ ク を 測定し て記録し 、 テ ス ト ス ク リ プト を 生成する SilkPerformer の エンジ ンです。 最初に、 SilkPerformer Recorder は、 テス ト 対象のク ラ イ アント アプ リ ケーショ ン と サーバー間のト ラ フ ィ ッ ク を キャ プチャ し て記録し ま す。 記録が終了すると 、 SilkPerformer Recorder は、 記録さ れたト ラ フ ィ ッ ク か ら テス ト ス ク リ プト を 自動 生成し ま す。 ス ク リ プト は、 SilkPerformer のス ク リ プト 言語であ る Benchmark セク ショ ン ページ 概要 9 負荷テス ト ス ク リ プト を 作成する 10 生成さ れた ス ク リ プト を 試行する 14負荷テ スト スク リ プト を 作成する
負荷テスト スクリプトを作成する
手順 : 負荷テスト スク リ プト を モデリ ングするには : 1 SilkPerformer の ワーク フ ロ ー バーの [ ス ク リ プト の作成 ] ボタ ンを ク リ ッ ク し ま す。 2 [ ワーク フ ロ ー - ス ク リ プト の作成 ] ダ イ アロ グが表示さ れま す。 ダ イ アロ グの [ ス ク リ プト ] 領域にあ る [ 記録 ] を 選択し ま す。 3 [ アプ リ ケーショ ン プロ フ ァ イ ル] ド ロ ッ プ ダ ウ ン リ ス ト か ら 、 負 荷テス ト で使用し た いク ラ イ アント アプ リ ケーショ ンのプロ フ ァ イ ルを 選択し ま す (例、 [Internet Explorer])。 4 使用し た いアプ リ ケーショ ンのプロ フ ァ イ ルがま だ設定さ れて いな い場合 は、ド ロ ッ プ ダ ウ ン リ ス ト の右側に あ るボタ ンを ク リ ッ ク し て、 設定し ま す。5 [URL] フ ィ ー ルド には、記録する URL を 入力し ま す (例、 http://lab3/
負荷テ スト スク リ プト を 作成する メ モ : 初めての ユーザの動作を エミ ュ レ ート するス ク リ プト を 記録す
る場合には、 使用するブラ ウザのク ッ キーが削除さ れて いるこ と を 確認 し て く ださ い。
6 [OK] を ク リ ッ ク し ま す。 SilkPerformer Recorder が最小化さ れた フォ ー ムで開
負荷テ スト スク リ プト を 作成する メ モ : 記録中に発生し た アク ショ ンのレ ポート を 表示するには、 GUI サ イ ズの変更 ボタ ンを ク リ ッ ク し て Recorder ダ イ アロ グを 最大化し ま す。 7 ブラ ウザを 使用し て、 負荷テス ト 中に仮想ユーザーが行わせ る動作通り に タ ーゲッ ト サーバーと やり 取り し ま す (リ ンク と ク リ ッ ク し て商品を 探す、 な ど)。 行った動作が、 Recorder に よってキャ プチャ さ れ、 記録さ れま す。 作業が完了し た ら 、 ブラ ウザ ウィ ン ド ウを 閉じ、 Recorder の [ 記録停止 ] ボ タ ンを ク リ ッ ク し ま す。
負荷テ スト スク リ プト を 作成する
8 [名前を 付けて保存 ] ダ イ アロ グが開き ま す。 定義し た仮想ユーザーの動作
生成さ れたスク リ プト を 試行する 9 記録し たト ラ フ ィ ッ ク を 基に新し く 生成さ れた負荷テス ト ス ク リ プト が、 SilkPerformer ス ク リ プト エディ タ ウィ ン ド ウに表示さ れま す。
生成されたスクリプトを試行する
テス ト ス ク リ プト を 生成し た ら 、 TryScript 実行 に よって、 ス ク リ プト がエラー なし で動作するか ど う かを 確認する必要が あり ま す。 TryScript 実行では、 こ の チュ ート リ ア ルで先ほ ど記録し た操作を ス ク リ プト が正確に再現するか ど う かが わか り ま す。 TryScript 実行のデフォ ルト の オプショ ン設定には、 テス ト 時にダ ウ ンロ ー ド さ れた データ の実況表示や、 ロ グ フ ァ イ ルおよびレ ポート フ ァ イ ルの作成な どが あり ま す。 TryScript 実行では、 ト ラ ンザク ショ ン間の思考時間や遅延が発生し な いよ う に、 1 人の仮想ユーザーの みが実行さ れ、 ス ト レ ス テス ト オプショ ンが有効にな り ま す。TryScript 実行は TrueLog Explorer に表示さ れま す。 こ の表示で、 再生エラーを 素 早く 見つけ るこ と ができ ま す。
生成さ れたスク リ プト を 試行する 手順 : 負荷テスト スク リ プト を 試験的に実行するには : 1 SilkPerformer の ワーク フ ロ ー バーの ス ク リ プト の試行 を ク リ ッ ク し ま す。 ワーク フ ロ ー – ス ク リ プト の試行 ダ イ アロ グが表示さ れま す。 アク ティ ブなプロ フ ァ イ ルが、 すでに [ プロ フ ァ イ ル] ド ロ ッ プ ダ ウ ン リ ス ト において選択さ れて いま す。 作成し た ス ク リ プト も 、 [ ス ク リ プト ] ド ロ ッ プ ダ ウ ン リ ス ト において 選択さ れて いま す。 VUser と い う 仮想ユーザー グ ループが、 [ ユーザー グ ループ ] 領域で選択さ れて いま す。 2 TryScript 実行の間に Web サーバーか ら実際にダ ウ ンロ ー ド さ れた データ を 表示するには、 [ アニ メ ーショ ン ] チェッ ク ボッ ク ス を オンにし ま す。 メ モ : Web アプ リ ケーショ ン以外の アプ リ ケーショ ンを テス ト する場 合には、 [ アニ メ ーショ ン ] オプショ ンを オフ にし て く ださ い。
生成さ れたスク リ プト を 試行する 3 [実行 ] を ク リ ッ ク し ま す。 メ モ : こ こ では、 実際の負荷テス ト を 実行する わけではあり ま せん。 ス ク リ プト のデバッ グが必要か ど う かを 確認するためのテス ト 実行にす ぎま せん。 4 TryScript 実行が開始し ま す。 [ 監視 ] ウィ ン ド ウが開き 、 実行の進捗につい ての詳細な情報が表示さ れま す。
5 TrueLog Explorer が開き 、 TryScript 実行中に実際にダ ウ ンロ ー ド さ れたデー タ が表示さ れま す。
6 TryScript 実行中にエラーが発生し た場合は、 TrueLog Explorer を 使用し て、 エラーの検索やセッ ショ ン関係の情報を カ ス タ マ イ ズするこ と ができ ま す。 詳細については、 「セッ ショ ン処理を カ ス タ マ イ ズする」を 参照し て く ださ
3
Chapt e r 3テスト スクリプトの分析
はじめに 本章では、 記録さ れた負荷テス ト ス ク リ プト を 、 TryScript 実行の結果に基づ い て分析する方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
記録し たテス ト ス ク リ プト に対し て TryScript 実行を いった ん開始し た ら 、 TrueLog Explorer を 使用し て、 TryScript 実行の結果を 分析する必要が あり ま す。 TrueLog Explorer でのテス ト ス ク リ プト 分析には、 次の 3 つの タ ス ク が あり ま セク ション ページ 概要 17 TrueLog Explorer での視覚的分析 17 要約レ ポート を 表示する 20 エラーを 検索する 23 ページ統計値を 表示する 24 記録 TrueLog と 再生 TrueLog を 比較する 28TrueLog Explorer での視覚的分析 に、 仮想ユーザーが アプ リ ケーショ ンと やり 取り を すると き に 「見 る」 も のが表 示さ れま す。 TrueLog Explorer の イ ンタ ーフ ェ イスは、 次のセク ショ ンか ら構成さ れて いま す : • ワーク フ ロ ー バーは、 TrueLog Explorer を 扱 う 際の主要な イ ンタ ーフ ェ イス と な り ま す。 ワーク フ ロ ー バーでは、 TrueLog Explorer に組み込ま れて いる 負荷テスト 方法論を 反映し て、 5 つの主要なタ スク がサポート さ れて いま す。 • イ ンタ ーフ ェ イス の左側にあ る ツ リ ー リ ス ト ビュ ーでは、 負荷テスト 中に ダ ウ ンロ ー ド さ れた TrueLog データ を 展開ま たは縮小でき ま す。 ロ ー ド さ れ て いる TrueLog フ ァ イ ルはそ れぞれ、 関連する すべての API ノ ー ドへの リ ンク と 共に、 こ こ に表示さ れま す。 ノ ー ドを ク リ ッ ク すると 、 そのコ ンテ ン ツが ソ ース ビュ ーに、 履歴の詳細が 情報 ビュ ーに表示さ れま す。 • ソ ース ウィ ン ド ウでは、 HTML ソ ース コ ー ドと レ ン ダリ ン グさ れた HTML コ ンテ ン ツの両方を ビュ ーが用意さ れて いま す。 [ レ ン ダリ ン グ ] ビュ ーに は、 ツ リ ー リ ス ト ビュ ーにて選択さ れて いる API ノ ー ド に対する、 サー バーか ら のレ スポ ンスを 「レ ン ダリ ン グ」 し て表示さ れま す。 [ ソ ース ] ビュ ーには、 Web コ ンテ ン ツを 生成するために使用さ れる HTML コ ー ドが 表示さ れま す。
TRUELOG EXPLORERでの視覚的分析 • 情報 ビュ ーには、 負荷テス ト ス ク リ プト およびテス ト 実行 に関するデータ が表示さ れま す。 読み込ま れた TrueLog フ ァ イ ル、 選択さ れた API ノ ー ド、 BDL ス ク リ プト 、 HTML 参照、 HTML ヘッ ダー データ な どに関する、 一般 情報が含ま れて いま す。 テスト 実行を 分析する 手順 : テスト 実行の結果を 分析するには :
1 対象と な る TrueLog を TrueLog Explorer に読み込みま す。
前チュ ート リ ア ルで実行し た TryScript 実行の TrueLog が TrueLog Explorer に
アク セ スさ れた API ノ ー ドの ツ リ ー ビュ ー ワーク フ ロー レ ン ダリ ン グ さ れた HTML HTML ソ ース ビュ ー タ ブ 複数のビュ ーを 持つ情 報 ウ ィ ン ド ウ
要約レ ポート を 表示する • 再生テス ト 実行と 記録テス ト 実行の比較
要約レポートを表示する
仮想ユーザー要約レ ポート は、 個々の TryScript 実行の要約レ ポート で、 基本情 報と タ イミ ン グ平均を 提供し ま す。 そ れぞれのレ ポート は、 仮想ユーザーごと に 記録さ れて おり 、 表形式でデータ が表示さ れま す。 仮想ユーザー要約レ ポート には、 以下に関する詳細情報が含ま れて いま す : - 仮想ユーザー - 検出さ れた エラー - 負荷テス ト ス ク リ プト に定義さ れて いるト ラ ンザク ショ ン ごと のレ ス ポ ンス 時間情報 - ダ ウ ンロ ー ド さ れた Web ページ ごと のページ タ イマの測定値 - 負荷テス ト ス ク リ プト で宣言さ れて いる各 Web フォ ー ムに関連する測 定値。 こ れには、 レ ス ポ ンス 時間の測定値、 POST、 GET、 および HEAD の各メ ソ ッ ドを 使用し た フォ ー ム送信に対するス ループッ ト 速度 も 含ま れま す。 - ス ク リ プト で使用さ れた個別のタ イマおよびカ ウ ンタ (Measure 関数)要約レ ポート を 表示する 仮想ユーザー要約レ ポート に含ま れる統計の詳細については、 SilkPerformer の オ
要約レ ポート を 表示する
2 [仮想ユーザー要約レ ポート の表示 ] リ ンク を 選択し ま す。
要約レ ポート を 有効にす
る 仮想ユーザー要約レ ポート の処理には時間がかか るので、 デフォ ルト では生成されな い設定になって いま す。 アニ メ ーショ ン化さ れた TryScript 実行の終了時や、 ツ リ ー リ ス ト ビュ ーで TrueLog フ ァ イ ルの ルート ノ ー ドを ク リ ッ ク し た際に、
エラーを 検索する TrueLog Explorer の [ 設定 ] メ ニュ ー ([ オプショ ン| ワーク ス ペース |レ ポート ]) で、 [ 仮想ユーザー レ ポート を 表示する ] チェッ ク ボッ ク ス を 選択し ま す。 メ モ : 仮想ユーザー要約レ ポート は、 SilkPerformer Workbench 内でも 表 示さ せ るこ と ができ ま す。 [ ユーザー ] ビュ ーで仮想ユーザーを 右ク リ ッ ク し 、 そのコ ンテキ ス ト メ ニュ ーか ら [ 仮想ユーザー レ ポート フ ァ イ ル の表示 ] を 選択し ま す。
エラーを検索する
TrueLog Explorer を 利用すると 、 TryScript 実行の後で、 エラーを すばやく 検索で き ま す。 そ し て、 TrueLog Explorer にて エラーになった リ ク エス ト を 調査し 、 必 要なカ ス タ マ イ ズを 行 う こ と ができ ま す。
メ モ : ツ リ ー リ ス ト ビュ ーに表示すると 、 再生エラーを 含む API ノ ー ド には、 赤い 「X」 印が付いて いま す。
手順 : TrueLog 内の 再生エラーを 検索するには :
1 前チュ ート リ ア ルで実行し た TryScript 実行で生成さ れた TrueLog が TrueLog
ページ統計値を 表示する 2 ダ イ アロ グ上で [ エラーの検索 ] リ ンク を ク リ ッ ク し ま す。 3 [TrueLog のス テッ プ ス ル ー ] ダ イ アロ グが、 [ エラー ] オプショ ンが選択さ れた状態で表示さ れま す。 4 1 度に 1 つの エラーを 検索し なが ら TrueLog 結果フ ァ イ ル内を 移動するに は、 [ 次を 検索 ] を ク リ ッ ク し ま す。
ページ統計値を表示する
ページ統計値を 表示する ページの総レ ス ポ ンス 時間、 ド キュ メ ント の ダ ウ ンロ ー ド時間 (サーバーの ビ ジー時間を 含む)、 および埋め込みオブジ ェ ク ト の受信に要し た時間が表示さ れ ま す。 Web ページの詳細な統計値には、 個々の Web ページ コ ンポーネント の正確なレ ス ポ ンス 時間が表示さ れるので、 エラーや、 ページの ダ ウ ンロ ー ドが遅く な る根 本原因を 簡単に突き 止め るこ と ができ ま す。 メ モ : TryScript 実行には、 思考時間が含ま れな いため、 TryScript に よ る測定結果は、 実世界のパフォ ーマ ンス を 予測するためには利用でき ま せん。 Web ページの詳細な分析結果には、 ページ コ ンポーネント ごと に以下のデータ が記載さ れて いま す。 • DNS ルッ ク アッ プ時間 • 接続時間 • SSL ハン ドシ ェ イク 時間 • リ ク エス ト 送信時間 • サーバー ビジー時間 • レ ス ポ ンス 受信時間 • キャ ッ シュ 統計値 手順 : 概要 ページを 表示するには : 1 ツ リ ー リ ス ト ビュ ーにおいて、 統計値を 表示する API ノ ー ドを 選択し ま す。 2 [TrueLog ス テッ プ ス ル ー ] ダ イ アロ グス テ ッ プで、 [ ページ全体 ] オプショ ンを 選択し ま す。
ページ統計値を 表示する
ページ統計値を 表示する
4 詳細分析およびページの掘り 下げを 行 う には、 [URL] 列に一覧さ れて いる中
記録 TrueLog と 再生 TrueLog を 比較する
記録 TrueLog と再生 TrueLog を比較する
Web アプ リ ケーショ ンのテス ト の場合、 TrueLog Explorer には、 テス ト 時に受信 さ れた実際の Web ページが表示さ れま す。 TrueLog Explorer の アニ メ ーショ ン
モー ド では、 ダ ウ ンロ ー ド さ れた データ の実況監視が可能で、 テス ト 中に受信さ れたと おり にデータ が表示さ れま す。 ス ク リ プト 開発プロ セス 中に生成さ れた再生 TrueLog と 、 アプ リ ケーショ ンの記 録中に当初生成さ れた TrueLog を 比較するこ と で、 テス ト ス ク リ プト が正確に 実行さ れたか ど う かを 確かめ るこ と ができ ま す。 記録および再生 TrueLog 間の差 異は、 通常、 セッ ショ ン ID と いったセッ ショ ン関連データ に よって生じま す。 詳細については、 「セッ ショ ン処理を カ ス タ マ イ ズする」を 参照し て く ださ い。 手順 : 再生 TrueLog と そ れに対応する記録 TrueLog を 比較するには : 1 ワーク フ ロ ー バー の [ テス ト の分析 ] ボタ ンを ク リ ッ ク し ま す。 [ ワーク フ ロ ー - テス ト の分析 ] ダ イ アロ グが表示さ れま す。
記録 TRUELOGと 再生 TRUELOGを 比較する 2 [テス ト 実行の比較 ] ボタ ンを ク リ ッ ク し ま す。 3 対応する記録 TrueLog が比較 ビュ ーに開き 、 [TrueLog のス テッ プ ス ルー ] ダ イ アロ グが、 [ ページ全体 ] オプショ ンが選択さ れた状態で表示さ れま す。 こ れに より 、 TrueLog を ノ ー ド ごと に比較するこ と ができ ま す。 4 [次を 検索 ] ボタ ンを ク リ ッ ク すると 、 TrueLog 結果フ ァ イ ル内を 1 ページ ずつ移動するこ と ができ ま す。
記録 TrueLog と 再生 TrueLog を 比較する メ モ : 再生時のコ ンテ ン ツを 表示し て いる ウィ ン ド ウには、 左上隅に 緑色の三角マーク が付いて いま す。 アプ リ ケーショ ンの記録時に元々表 示さ れて いたコ ンテ ン ツを 表示し て いる ウィ ン ド ウには、 左上隅に赤い 三角マーク が付いて いま す。 記録さ れたセッ シ ョ ン を 表示し て いる ウィ ン ド ウには、 赤の三角が
記録 TRUELOGと 再生 TRUELOGを 比較する
差異を 視覚的 に調査
4
Chapt e r 4テスト スクリプトのカスタマ
イズ
はじめに 本章では、 負荷テス ト ス ク リ プト を 、 ス ク リ プト の試行の結果を 基に分析する 方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
SilkPerformer で負荷テス ト ス ク リ プト を 生成し 、 TryScript 実行を 実行し た ら 、 TrueLog Explorer を 使用し て以下の方法でス ク リ プト を カ ス タ マ イ ズでき ま す。 • セッ ショ ン処理のカ ス タ マ イ ズ - TrueLog Explorer の (構文) 解析関数 セク ショ ン ページ 概要 33 セッ ショ ン処理を カ ス タ マ イ ズする 34 ユーザー データ を カ ス タ マ イ ズする 40 検証を 追加する 47セッ ショ ン処理を カ スタ マ イズする • テスト ス ク リ プト への検証の追加 - [ 検証の追加 ] ツー ルを 使用する と 、 負荷テス ト 中にダ ウ ンロ ー ド さ れた データ について豊富な知識を 得 るこ と ができ ま す。 こ れに よ り その知識に基づいて、 サーバーか ら 送信 さ れるコ ンテ ン ツが正し いか ど う かを 確認で き ま す。 シ ス テ ム開発後 も 、 検証は引き 続き 、 継続的なパフォ ーマ ンス 管理に役立ちま す
セッション処理をカスタマイズする
SilkPerformer の記録技術は、 静的なセッ ショ ン情報を 含ま な い、 コ ンテキ ス ト 対 応の ス ク リ プト を 生成するため、 通常、 ほと ん どの アプ リ ケーショ ンでセッ ショ ン処理のカ ス タ マ イ ズは必要あり ま せん。 し たがって、 テス ト の分析中に何 も 問題が検出さ れなければ、 セッ ショ ン処理のカ ス タ マ イ ズを 省略し て、 ユー ザー データ のカ ス タ マ イ ズに進みま す。 ク ラ イ アント へのレ ス ポ ンス 内で、 サーバーが実行時に情報を 生成するこ と が よ く あり ま す。 こ の情報は、 同じ ユーザー セッ ショ ン中のク ラ イ アント リ ク エス ト が、 同じ コ ンピ ュ ータ か ら 送ら れてき たこ と を 識別するために使われま す。 こ の よ う なセッ ショ ン情報が更新さ れな いと 、 その後のテス ト 実行で問題が発生す る場合が あり ま す。 再生テス ト 実行を 元の記録テス ト 実行と 比較し たと き に、 古いセッ ショ ン情報が 検出さ れた場合には、 今後のテス ト 実行のために、 その情報を 動的な変数に置き 換 え る必要が あり ま す。 さ も なければ、 負荷テス ト ス ク リ プト が無効な セッ ショ ン ID や、 その他のセッ ショ ン情報を 用 いて要求を 行って し ま いま す。 TrueLog Explorer は、 ユニーク で強力なヒ ュ ーリ ス ティ ク ス を 駆使し て、 こ の作 業のほと ん どを 処理し ま す。 カ ス タ マ イ ズが必要な差分はオレ ンジ色、 必要でな い差分は青色で表示さ れま す。セッ ショ ン処理を カ スタ マ イズする 手順 : セッ ショ ン処理を カ スタ マ イズするには :
1 前チュ ート リ ア ルか ら の記録および再生 TrueLog が TrueLog Explorer へ読み
込ま れた ら 、 ワーク フ ロ ー上の [ セッ ショ ン処理のカ ス タ マ イ ズ ] ボタ ンを ク リ ッ ク し ま す。 [ ワーク フ ロ ー - セッ ショ ン処理のカ ス タ マ イ ズ ] ダ イ ア ロ グが開き ま す。
セッ ショ ン処理を カ スタ マ イズする 2 [差分の検索 ] を ク リ ッ ク し て差分テーブ ル ([ ソ ース 差分 ] ビュ ー) を 表 示し ま す。 こ こ には、 再生セッ ショ ン中と 記録セッ ショ ン中で、 サーバーが 異な る (ま たは動的な) 情報を 返し た箇所が表示さ れま す。 こ の よ う な情報 は、 変数に置き 換 え る必要が あり ま す。 3 [TrueLog のス テッ プ ス ルー ] ダ イ アロ グ ボッ ク ス を使用し て、 HTML サー バーのレ ス ポ ンス 内を 移動し ま す。 記録さ れたレ ス ポ ンス が、 そ れに対応す る再生さ れたレ ス ポ ンス と 一緒に表示さ れま す。 解析が必要なのは、 静的な 情報がテス ト ス ク リ プト 内に含ま れて いて、 そ れがサーバーに返さ れて い るこ と を 示す差分だけです。 たと えば、 再生セッ ショ ンと 記録セッ ショ ンの
セッ ショ ン処理を カ スタ マ イズする 差分が、 e- コ マース サ イト で在庫品が不足し て いるこ と が原因の場合、 その よ う な差分は、 セッ ショ ンには関係な いので、 ス ク リ プト のカ ス タ マ イ ズを するのは適切ではあり ま せん。 ステータス行は、 検出された差分が セッ ショ ン情報かどうかを 示す 差分は、 こ こ の差分 テーブル内に表示さ れる
セッ ショ ン処理を カ スタ マ イズする 4 [ソ ース 差分 ] ビュ ーに一覧表示さ れた エラーの 1 つを ダブ ルク リ ッ ク し ま す。 [ 解析関数の挿入 ] ダ イ アロ グが、 境界値と 変数名が あら か じめ挿入さ れた形で開き ま す - こ のため、 手動で境界値を 見つけて入力する必要は あり ま せん。 カスタマイズするには、 一覧されている差分を ダブルク リッ ク HTML における出現回数 がこ こ に表示される こ のインジケータは、 差 分がセッ ショ ン情報である 可能性があるこ と を 示す BDL コ ード内 で発生して いる差分のみ、 カスタマ イズでき る
セッ ショ ン処理を カ スタ マ イズする 5 [解析関数の挿入 ] ダ イ アロ グ上で [OK] を ク リ ッ ク し て、 必要な解析関数 を BDL ス ク リ プト に挿入し ま す。 6 ス ク リ プト が正常に変更さ れた ら 、 [ セッ ショ ン処理のカ ス タ マ イ ズ ] ボタ ンを ク リ ッ ク し て、 新し い ス ク リ プト 試行のための初期化を行いま す。 7 セッ ショ ン処理を カ ス タ マ イ ズし た後で、 ス ク リ プト が正し く 動作するか ど う かを 確認するには、 [ ス ク リ プト の試行 ] を ク リ ッ ク し ま す。
ユーザー データ を カ スタ マ イズする 9 負荷テス ト ス ク リ プト 内のセッ ショ ン関連情報が すべてカ ス タ マ イ ズさ れ るま で、 こ の手順を 必要な回数繰り 返し ま す。
ユーザー データをカスタマイズする
現実の条件の下では、 Web アプ リ ケーショ ンの ユーザーは、 予測でき ないよ う な組み合わせのデータ を HTML フォ ー ムに送信し ま す。 効果的な Web アプ リ ケーショ ン テス ト の目標は、 テス ト ス ク リ プト に よって、 その よ う な変則的で 多様なユーザーの動作を エミ ュ レ ート するこ と です。 TrueLog Explorer の [ パ ラ メ ータ ウィ ザー ド ] を 使用すると 、 テス ト 中にフォ ー ムに入力さ れる ユーザー入力データ を カ ス タ マ イ ズでき ま す。 [ パ ラ メ ータ ウィ ザー ド ] に よって、 フォ ー ム フ ィ ー ルド に入力さ れるデータ を 指定でき ま す。 ま た、 記録さ れて いる ユーザー入力データ を ラ ン ダ ムな パ ラ メ ータ 化さ れた ユー ザー データ に置き 換 え るこ と に よって、 現実に近いテス ト ス ク リ プト を 作成で き ま す。 こ のチュ ート リ ア ルでは、 既存のパ ラ メ ータ を 基にし て変数を 作成する方法を 紹 介し ま す。 [ パ ラ メ ータ ウィ ザー ド ] の機能の詳細については、 SilkPerformer の ド キュ メ ント を 参照し て く ださ い。ユーザー データ を カ スタ マ イズする 手順 : HTML フ ォー ム フ ィ ー ルドへのユーザー入力データ を カ スタ マ イズする には :
1 再生 TrueLog を TrueLog Explorer に読み込んだら、 ワーク フ ロー バー上の
[ ユーザー データ のカ ス タ マ イ ズ ] ボタ ンを ク リ ッ ク し ま す。 [ ユーザー
ユーザー データ を カ スタ マ イズする 2 [カ ス タ マ イ ズ ] を ク リ ッ ク し ま す。 3 [TrueLog のス テッ プ ス ルー ] ダ イ アロ グの [ 次を 検索 ] ボタ ンと [ 前を 検索 ] ボタ ンを 使用し て、 TrueLog 内の すべての WebPageSubmit 呼び出し を 参照 し ま す ( こ れら が ユーザ ー データ のカ ス タ マ イ ズ候補と な る呼び出し です)。 [ポス ト データ ] ビュ ーには、 選択さ れて いる WebPageSubmit 呼び出し に よって送信さ れた HTML フォ ー ムが含ま れて いるページが表示さ れま す。 カーソ ルを フォ ー ム コ ント ロ ー ルの上に置く と 、 ツー ルチッ プに、 そのコ ント ロ ー ルの名前、 初期値、 お よび送信さ れた値が表示さ れま す。 [ポス ト データ ] ビュ ーで強調表示さ れて いる HTML コ ント ロ ー ルは、 カ ス タ マ イ ズ可能なフォ ー ム フ ィ ー ルドを 表し て いま す。 記録さ れて いる値 を 、 さ ま ざま な種類の入力データ (フ ァ イ ルにあら か じめ定義し た値や一般
ユーザー データ を カ スタ マ イズする 的な ラ ン ダ ム値を 含む) に置き 換 え るこ と ができ ま す。 ま た、 記録さ れた入 力データ を カ ス タ マ イ ズし た値に置き 換 え るためのコー ドを テス ト ス ク リ プト に生成するこ と も でき ま す。 4 カ ス タ マ イ ズし た いフォ ー ム コント ロ ー ルを 右ク リ ッ ク し て、 [ 値のカ ス タ マ イ ズ ...] を 選択すると 、 [ パ ラ メ ータ ウィ ザー ド ] が開き ま す。
ユーザー データ を カ スタ マ イズする メ モ : こ のチュ ート リ ア ルでは、 ラ ン ダ ム変数に基づいてパ ラ メ ータ を 作成する手順の みについて説明し ま す。 [ パ ラ メ ータ ウィ ザー ド ] の 機能の詳細については、 SilkPerformer の ド キュ メ ント を 参照し て く ださ い。 6 [パ ラ メ ータ を 新規に作成する ] ラ ジ オ ボタ ンを 選択し 、 [ 次へ ] を ク リ ッ ク すると 、 新し いパ ラ メ ータ が作成さ れま す。 7 [パ ラ メ ータ の新規作成 ] ダ イ アロ グが表示さ れま す。 [ ラ ン ダ ム変数か ら パ ラ メ ータ を 作成 ] ラ ジ オ ボタ ンを 選択し 、 [ 次へ ] を ク リ ッ ク し ま す。 8 [パ ラ メ ータ ウィ ザー ド - ラ ン ダ ム変数 ] が表示さ れま す。 ド ロ ッ プ ダ ウ ン リ ス ト か ら 、 テス ト ス ク リ プト に挿入する ラ ン ダ ム変数のタ イプを 選択し
ユーザー データ を カ スタ マ イズする 9 [次へ >] を ク リ ッ ク し ま す。 10 [変数の名前と 属性の指定 ] 画面が表示さ れま す。 [ フ ァ イ ルか ら の文字列 ] と い う ラ ン ダ ム変数タ イプでは、 指定さ れた フ ァ イ ルか ら ラ ン ダ ムに選択ま たは順次選択でき るデータ 文字列が生成さ れま す。 変数の名前を [ 名前 ] フ ィ ー ルド に入力し ま す。 値の呼び出し 順序が [ ラ ン ダ ム] か [ シーケ ンシャ ル] かを 指定し ま す。 その あと 、 [ フ ァ イ ル] 領域の [名前 ] ド ロ ッ プ ダ ウ ン リ ス ト か ら 設定済みのデータソ ース を 選択し ま す。
ユーザー データ を カ スタ マ イズする その他 : [ 新規作成 ] ボタ ンを ク リ ッ ク すると 、 ラ ン ダ ム変数フ ァ イ ル を 新規作成でき ま す。 11 [次へ >] を ク リ ッ ク すると 、 [ 使用方法の選択 ] ダ イ アロ グが表示さ れま す。 新し いラ ン ダ ム変数の使用が [ 毎回 ]、 [ ト ラ ンザク ショ ン ごと ] 、 [ テ ス と ごと ] の ど ち ら で あ るかを 指定し ま す。 12 [完了 ] を ク リ ッ ク すると 、 記録さ れて いる値の代わり に ラ ン ダ ム変数を 指 定の フォ ー ム フ ィ ー ルド に使用する よ う にテス ト ス ク リ プト の BDL フォ ー ム宣言が変更さ れま す。 新し いラ ン ダ ム変数関数が [BDL] ビュ ーの下部に表 示さ れま す。 13 テス ト ス ク リ プト でこ の ラ ン ダ ム変数関数を 使って TryScript を 起動し て、 ス ク リ プト がエラーなし に動作するこ と を 確かめま す。 14 [TrueLog のス テッ プ ス ルー ] ダ イ アロ グ上で [ フ ォ ー ム送信 ] ラ ジ オ ボタ ンを 選択し 、 入力データ を カ ス タ マ イ ズし た い次の フォ ー ムを 検索し ま す。 複数列データ ファイル 複数列データ フ ァ イ ルか ら のパ ラ メ ータ 化は、 文字列値の特定の組み合わせ (ユーザー名 / パス ワー ド、 名 / 姓な ど ) が格納さ れるフ ァ イ ルを 定義するため、 データ を パ ラ メ ータ 化する強力な手段にな り ま す。 データ フ ァ イ ルの各列は特定 のパ ラ メ ータ に対応し て いま す。 複数列データ フ ァ イ ルを 使 う と 、 データ 駆動型 テス ト モデ ルが可能にな り 、 すべての ユーザー データ 入力を ただ 1 つのデータ フ ァ イ ルでカバーでき ま す。
検証を 追加する メ モ : 複数列データ フ ァ イ ルの詳細については、 SilkPerformer の ド キュ メ ント を 参照し て く ださ い。
検証を追加する
TrueLog Explorer を 使用すると 、 テス ト ス ク リ プト にコ ンテ ン ツ チェ ッ ク を 簡単 に追加し て、 サーバーか ら 送信さ れるコ ンテ ン ツが現実的な状況で実際にク ラ イ アント に受信さ れるか どう かを 検証でき ま す。 再生テス ト 実行と 記録テス ト 実行を 比較するこ と に よって、 TrueLog Explorer で は、 埋め込みオブジ ェ ク ト 、 テキ ス ト 、 グ ラ フ ィ ッ ク ス 、 テーブ ル データ 、 SQL レ ス ポ ンス な ど が、 シス テ ム負荷が重い場合でも 、 実際にク ラ イ アント に ダ ウ ンロ ー ド さ れて表示さ れるか ど う かを 確認でき ま す。 こ れは、 ク ラ イ アント /サーバー環境の エン ド ユーザーの状況を テス ト すると い う 課題に対する一意で 強力な アプロ ーチです。 こ れに よ り 、 他の Web ト ラ フ ィ ッ ク シミ ュ レ ーショ ン ツー ルが検知でき な い種類の エラーを 検知でき ま す : こ れは、 標準的な負荷テス ト ス ク リ プト では検知でき な い負荷での み発生する エラーです。 コ ンテ ン ツ検証は、 稼働中のパフォ ーマ ンス 管理で利用でき るので、 シ ス テ ムを 配置し た後も 役に立ちま す。 検証する オブジ ェ ク ト を 指定するだけで (レ ン ダリ ン グさ れた HTML、 HTML のソ ース コ ー ド、 ま たはその他の場所を 右ク リ ッ ク )、 必要な すべての検証関数 が生成さ れて、 BDL ス ク リ プト に挿入さ れま す。TrueLog Explorer では、 Web、 XML、 およびデータ ベース の アプ リ ケーショ ン用 に、 あら か じめ有効になって いる検証関数が あり ま す。 Web アプ リ ケーショ ンの 場合は、 HTML のページ タ イト ル、 ページの ダ イジ ェ ス ト (コ ンテ ン ツ全体の チェ ッ ク )、 テーブ ル、 ソ ース コ ー ドのチェッ ク が あら か じめ有効になって いま す。
手順 : Web ページ用のコ ンテ ン ツ検証を 定義するには :
1 TrueLog Explorer に TrueLog を 読み込んだら 、 目的のページま で移動し ま す。
2 検証するテキ ス ト を 選択し ま す (ページ タ イト ルと ページ ダ イジ ェ ス ト を
検証する場合は不要)。
検証を 追加する
その他 : コ ンテ ン ツを 右ク リ ッ ク し て、 コ ンテキス ト メ ニュ ーか ら 検 証関数を 選択するこ と も でき ま す。
検証を 追加する 4 [ ワーク フロ ー - 検証の追加 ] 画面か ら あら か じめ有効になって いる検証を 選択し ま す (こ のチュ ート リ ア ルでは、 [ 選択し たテキス ト の検証 ] を 選択 し ま す)。 - ページ タ イト ルの検証 - 選択し たテキ ス ト の検証 - HTML テーブ ル内で選択し たテキス ト の検証 - ダ イジ ェ ス ト の検証
検証を 追加する 5 BDL ス ク リ プト への検証関数の挿入方法を 指定するには、 [ コ ンテ ン ツ検証 関数の挿入 ] ダ イ アロ グを 完成さ せま す。 [ 左境界 ] と [ 右境界 ] は、 自動的 に識別さ れま す。 6 [OK] を ク リ ッ ク し て、 検証の設定を 適用し ま す。 7 BDL ス ク リ プト が正常に変更さ れた ら 、 BDL ス ク リ プト に追加する検証ご と に、 こ の手順を 繰り 返し ま す。
検証を 追加する
8 検証の追加が完了し た ら 、 [ ワーク フロ ー - 検証の追加 ] ダ イ アロ グの [ は
検証を 追加する 9 検証が正常に渡さ れたこ と を 確認し ま す (検証を 含む API ノ ー ド には、 青 い "V" 印が表示さ れま す)。 カスタマイズの完了 アプ リ ケーショ ンに よ るセッ ショ ン情報およびユーザー入力データ の処理方法の カ ス タ マ イ ズ、 必要なすべての検証関数の追加、 および BDL ス ク リ プト に対す る SilkPerformer での必要な手動編集が完了すれば、 負荷テス ト ス ク リ プト はエ ラーなし で動作し ま す。
5
Chapt e r 5ユーザー プロファイルの定義
はじめに 本章では、 カ ス タ ム ユーザー プロ フ ァ イ ルの設定方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
ユーザーの一連の動作を 提供する負荷テス ト ス ク リ プト は、 ユーザー タ イプを 基に作成するこ と ができ ま す。 ユーザー タ イプは、 ユーザー グ ループ と 負荷テ ス ト プロ ファ イ ル の一意の組み合わせです。 新し いユーザー タ イプは、 新し い ユーザー グ ループおよびテス ト プロ フ ァ イ ルを 定義するこ と に よ り 作成でき ま す。 ユーザー グ ループは、 共通のト ラ ンザク ショ ンやト ラ ンザク ショ ン頻度設定を 共有する、 ユーザーの集ま り です。 ユーザー グ ループは、 BDL ス ク リ プト の dcluser セク ショ ンで定義さ れま す。 プロ フ ァ イ ルを お使いの負荷テス ト プロ ジ ェ ク ト に追加するこ と に よ り 、 1 つの ユーザー タ イプに様々な特性 (接続速度、 プロ ト コ ル、 ブラ ウザな ど ) が付与 セク ショ ン ページ 概要 53 カ ス タ ム ユーザー プロ フ ァ イ ルを 定義する 54カ スタ ム ユーザー プ ロ フ ァ イルを 定義する
コ ルに関する オプショ ンを 設定でき ま す。 ス ク リ プト 再生に関するシミ ュ レ ー ショ ン設定を 定義でき ま す。 テス ト 中に生成さ れる結果フ ァ イ ルに関するオプ ショ ンを 設定でき ま す。 イ ンタ ーネッ ト 、 Web、 CORBA/IIOP、 COM、 TUXEDO、 Jolt、 データ ベース な ど、 シミ ュ レ ーショ ン対象と な る、 さ ま ざま ネッ ト ワーク ト ラ フ ィ ッ ク に対し ても 、 オプショ ンを 設定するこ と ができ ま す。
カスタム ユーザー プロファイルを定義する
手順 : カ スタ ム ユーザー プロフ ァ イルを 定義するには : 1 SilkPerformer ワーク フ ロ ーバーの [ テス ト のカ ス タ マ イ ズ ] ボタ ンを ク リ ッ ク し ま す。カ スタ ム ユーザー プ ロ フ ァ イルを 定義する 2 [ ワーク フ ロ ー - テス ト のカ ス タ マ イ ズ ] ダ イ アロ グが表示さ れま す。 [ プロ フ ァ イ ル] ド ロ ッ プ ダウ ン リ ス ト で、 現在 アク ティ ブなプロ フ ァ イ ルが選 択さ れて いま す。 こ れがデフォ ルト プロ フ ァ イ ルです。 新いプロ フ ァ イ ル を 自分のワーク ロ ー ド に追加するには、 [ プロ フ ァ イ ルの新規作成 ] ボタ ン を ク リ ッ ク し ま す。 3 [新規のプロ フ ァ イ ル] ダ イ アロ グが開き ま す。 新し いプロ フ ァ イ ルの名前 (たと えば IE6_DSL な ど) を 入力し 、 [OK] を ク リ ッ ク し ま す。 4 SilkPerformer のメ イ ン ウィ ン ド ウの ツリ ー ビュ ー領域に あ る プロ ジ ェ ク ト タ ブで、 [ プロ フ ァ イ ル] フォ ルダを 展開し ま す。
カ スタ ム ユーザー プ ロ フ ァ イルを 定義する 5 プロ ジ ェ ク ト ウィ ン ド ウで新し く 作成さ れたプロ フ ァ イ ルの名前を 右ク リ ッ ク し 、 そのコ ンテキ ス ト メ ニュ ーか ら、 [ プロ フ ァ イ ルの編集 ...] を 選 択し 、 [ プロ フ ァ イ ル - < 名前 > - シミ ュ レ ーショ ン ] ダ イ アロ グを 表示し ま す。 6 こ の ダ イ アロ グか ら 、 プロ ジ ェ ク ト の ユーザー プロ フ ァ イ ルに関する様々 な設定を 調整するこ と ができ ま す。 左側のショ ート カッ ト リ ス ト か ら ア イ コ ンを 選択し 、 特定の設定にアク セス し ま す。 仮想ユーザーは、 幅広い選択肢の中か ら 選んだ任意の Web ブラ ウザと そこ に装備さ れて いる任意の機能を 使用する よ う にカ ス タ マ イ ズするこ と ができ ま す。 今日最も よく 使用さ れて いるブラ ウザを エミ ュ レ ート するこ と ができ ま す。 ま た、 携帯電話ユーザーにサー ビス を 提供するブラ ウザな ど、 あま り 有名でな いブラ ウザも 使用可能です。 HTTP のさ ま ざま なバージョ ンを 用 い て、 カ ス タ ム ブ ラ ウザを 定義するこ と も 可能です。 利用可能なプロ フ ァ イ ル設定に関する完全な詳細については、 SilkPerformer オン ラ イ ン ヘ ルプを 参照し て く ださ い。
カ スタ ム ユーザー プ ロ フ ァ イルを 定義する
6
Chapt e r 6ベースライン パフォーマンス
の判別
はじめに 本章では、 Web アプ リ ケーショ ンの ベース ラ イ ン パフォ ーマ ンス を 判別し 、 確 認する方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
SilkPerformer の負荷テス ト 実施の おけ る次のス テッ プは、 [ ベース ラ イ ン パ フォ ーマ ンス ] を 確定する (つま り 、 テス ト 対象 アプ リ ケーショ ンの理想的なパ フォ ーマ ンス を 決定する) こ と です。 ベース ラ イ ン テス ト は、 ユーザー タ イプ ごと に 1 ユーザーの みを 使用し て実行し 、 こ の負荷の な い状態での アプ リ ケー ショ ンのパフォ ーマ ンス 測定値が、 ユーザー タ イプ ごと の適切な同時使用ユー セク ショ ン ページ 概要 59 ベース ラ イ ンを 検索する 59 ベース ラ イ ンを 確認する 63ベース ラ インを 検索する いユーザー タ イプを 定義するこ と ができ ま す。 ベース ラ イ ン テス ト は、 特定の ユーザー タ イプを 使用し た負荷テス ト のための、 ベース ラ イ ン パフォ ーマ ンス を 定めま す。 ベース ラ イ ン テス ト では、 ユーザー タ イプ ごと に 1 人の仮想ユー ザーの みが実行さ れま す。 [ベース ラ イ ンの検索 ] ダ イ アロ グ ボッ ク ス では、 複数の ユーザー タ イプ (ス ク リ プト 、 ユーザー グ ループ、 プロ フ ァ イ ルの一意の組み合わせ) を 定義するこ と ができ ま す。 次の オプショ ン設定が、 ベース ラ イ ン テス ト に対し て自動的に設定さ れて いま す : • ベース ラ イ ン レ ポート フ ァ イ ルは自動的に作成 • [シミ ュ レ ーショ ン時間の後で仮想ユーザーを 停止する ( キュ ー イ ン グの ワーク ロ ー ド )] オプショ ンは有効に • [ ラ ン ダ ムな思考時間 ] オプショ ンは無効に • [負荷テス ト の説明 ] テキ ス ト ボッ ク ス は 「BaseLine Test」 に • [監視 ] ウィ ン ド ウの [ 全ユーザーの全エラーの表示 ] オプショ ンは有効に • [仮想ユーザー出力フ ァ イ ル (.wrt)] オプショ ンは有効に • [仮想ユーザー レ ポート フ ァ イ ル (.rpt)] オプショ ンは有効に
ベース ラ インを 検索する 手順 : テスト ベース ラ インを 判別するには : 1 SilkPerformer ワーク フ ロ ー バー上に あ る、 [ ベース ラ イ ンの検索 ] ボタ ンを ク リ ッ ク し ま す。 2 [ ワーク フ ロ ー - ベース ラ イ ンの検索 ] ダ イ アロ グが表示さ れま す。 ベース ラ イ ン テス ト で実行さ せた いユーザー タ イプを 選択し ま す。 各ユーザー タ イプか ら 1 つの仮想ユーザーが実行さ れま す。
ベース ラ インを 検索する 3 負荷テス ト に新し いユーザー タ イプを 追加し た い場合には、 [ 追加 ...] ボタ ンを 押し て、 [ ユーザー タ イプの追加 ] ダ イ アロ グか ら 、 ス ク リ プト 、 プロ フ ァ イ ル、 ユーザー グ ループの一意の組み合わせを 選択し ま す。 どのプロ フ ァ イ ルも 、 そのプロ ジ ェ ク ト 内の任意のス ク リ プト の任意の ユーザー グ ループと 組み合わせ るこ と ができ ま す。 4 選択し たプロ フ ァ イ ルのシミ ュ レ ーショ ン設定を 行 う には、 こ の ド ロ ッ プ ダ ウ ン リ ス ト の右側に あ る参照 ([...]) ボタ ンを ク リ ッ ク し ま す。
ベース ラ インを 確認する 5 [実行 ] を ク リ ッ ク し て、 ベース ラ イ ン テス ト を 実行し ま す。 6 ベース ラ イ ン テス ト が実行さ れま す。 [ 監視 ] ウィ ン ド ウが開き 、 テス ト の 進行状況についての詳細な情報が表示さ れま す。
ベースラインを確認する
SilkPerformer の負荷テス ト 実施の おけ る次のス テッ プは、 テス ト に よって確立し たテス ト ベース ラ イ ンが、 テス ト 対象アプ リ ケーショ ンの目標パフォ ーマ ンス を 実際に反映し て いるこ と を 確認するこ と です。 結果と し て でた測定値は、 負荷 テス ト におけ る、 同時使用仮想ユーザーの適切な数、 必要な帯域幅、 許容可能な し き い値な どを 算出するために使用さ れま す。 そのためには、 ベース ラ イ ン レ ポート でテス ト の結果を 調査し ま す。 満足でき る 結果の場合は、 結果を 保存し て さ らに処理でき ま す。 ベース ラ イ ン テス ト が完了し た ら 、 ベース ラ イ ン レ ポート が表示さ れま す。 ベース ラ イ ン レ ポート は、 XML/XSL 形式で、 重要なテス ト 結果が表形式で含ま れて いま す。ベース ラ インを 確認する
手順 : ベース ラ イン レ ポート を 表示さ せるには :
1 SilkPerformer ワーク フ ロ ー バーの [ ベース ラ イ ンの確認 ] ボタ ンを ク リ ッ ク し ま す。
ベース ラ インを 確認する 2 [ ワーク フ ロ ー - ベース ラ イ ンの確認 ] ダ イ アロ グ ボッ ク ス が表示さ れま す。 [ ベース ラ イ ン レ ポート ] を ク リ ッ ク し て、 現在のテス ト に対するベー ス ラ イ ン レ ポート を 表示さ せま す。 ベース ラ イ ン レ ポート は、 次の要素か ら構成さ れて いま す : • 全般情報 • ユーザー タ イプ • 要約テーブ ル • ト ラ ンザク ショ ン レ ス ポ ンス 時間 • HTML ページ タ イマ • Web フォ ー ム測定値 • [ベース ラ イ ンの承認 ] ボタ ン ベース ラ イ ン レ ポート の一般情報セク ショ ンには管理情報が表形式で記載さ れ て おり 、 そこ には、 SilkPerformer のバージョ ン情報、 プロ ジ ェ ク ト 名、 プロ ジ ェ ク ト の説明、 ベース ラ イ ン テス ト の日時、 ワーク ロ ー ド定義、 ワーク ロ ー ド モ デ ル、 エラー数な どが含ま れま す。 ユーザー タ イプ ] セク ショ ンの概要の各行では、 各ユーザー タ イプに対し て測
ベース ラ インを 確認する 3 テス ト 結果に満足し 、 さ ら に処理 (たと えば、 同時使用仮想ユーザーの数 や、 負荷テス ト に必要なネッ ト ワーク 帯域幅の算出な ど) を 行 う ためにそ れ ら を 保存し た い場合には、 ベース ラ イ ンの承認 ボタ ンを ク リ ッ ク し ま す。 4 [はい ] を ク リ ッ ク し ま す。 5 こ れで承認さ れたベース ラ イ ンができ たため、 選択し た タ イマにレ ス ポ ンス 時間のし き い値を 設定するこ と ができ ま す。 こ れらのし き い値を 設定するた め、 ス ク リ プト に MeasureSetBound 関数が生成さ れま す。 [レ ス ポ ンス 時間のし き い値の設定 ...] ボタ ンを ク リ ッ ク し て、 [ し き い値の 自動生成 ダ イ アロ グ ボッ ク ス が開き ま す。
ベース ラ インを 確認する 7 時間のし き い値の計算に使用し た い係数を 、 こ の ダ イ アロ グの [ 係数 ] セク ショ ンで指定し ま す。 ベース ラ イ ン テス ト での平均レ ス ポ ンス 時間にこ の フ ァク タ ーが乗算さ れ、 指定し た タ イマに対する時間し き い値が算出さ れま す (たと えば、 係数が 3 だった場合、 ベース ラ イ ン テス ト におけ るタ イマ の平均レ ス ポ ンス 時間の 3 倍の時間ま で、 レ ス ポ ンス 時間を 許容する、 と い う こ と にな り ま す)。 8 タ イマの値が、 指定さ れた し き い値を 超 えた場合に、 エラーや警告メ ッ セー ジを 表示さ せ るか ど う かを 、 こ の ダ イ アロ グの [ し き い値を 超 えたと き に発 生さ せ るメ ッ セージ ] セク ショ ンで指定し ま す。 こ こ では、 表示さ せ るメ ッ セージの深刻度も 指定するこ と ができ ま す。 9 [OK] を ク リ ッ ク し 、 選択し た タ イマーと ユーザー タ イプのテス ト ス ク リ プ ト に MeasureSetBound 関数を 追加し ま す。 しき い値を 生成するタイマを 選択 係数の低位 / 高位を 指定 低位は良いレ スポンス時間を 表 します。高位は、 許容でき るレ スポンス時間と 悪いレ スポンス時 間を 分ける境界と なります。 MeasureSetBound 関数が、 すべての選択したタイマおよ び承認したユーザー タイプの スク リプト に追加されます。 最小しき い値を 指定 メ ッ セージを 表示さ せる かどうかと その深刻度を 指定
7
Chapt e r 7監視テンプレートの設定
はじめに 本章では、 監視テ ンプレ ート を 設定し 、 負荷テス ト 時にサーバー側の結果情報を 生成する方法について説明し ま す。 本章の内容 本章には、 次のセク ショ ンが あり ま す :概要
SilkPerformer は、 負荷テス ト 時におけ るサーバおよびク ラ イ アント 側の監視機能 を 提供し て おり 、 こ れに よ り 、 テス ト 実行中にサーバーのパフォ ーマ ンス の実況 グ ラ フを 表示するこ と が可能になって いま す。 テス ト 時にサーバーを 監視するこ と は、 そ れに よ り サーバー側の結果情報も 生成さ れるため、 重要です。 こ の情報 は、 結果分析の際、 参照および他のテス ト 測定結果と 関係づけ るこ と ができ ま す。 他にも 、 サーバ監視に よ り 、 ボト ルネッ ク の有無やその位置を 確認するこ と がで き ま す。 オペレ ーティ ン グ シス テ ムおよびサーバー アプ リ ケーショ ンのパ フォ ーマ ンス を 調査するこ と も でき ま す。 セク ショ ン ページ 概要 69 監視テ ンプレ ート を 設定する 69監視テ ンプレ ート を 設定する 2 [ ワーク フ ロ ー - ベース ラ イ ンの確認 ] ダ イ アロ グ ボッ ク ス が表示さ れま す。 [ 監視オプショ ンの定義 ] を ク リ ッ ク し ま す。 3 プロ フ ァ イ ル - [< プロ フ ァ イ ル名 >] - 結果 ダ イ アロ グが開き 、 [ 結果 ] カ テ ゴ リ の [ 監視 ] タ ブが表示さ れま す。 4 [監視オプショ ン ] 領域で、 [ 自動的に監視を 開始する ] オプショ ンを 選択 し 、 負荷テス ト が始ま るたびに、 Performance Explorer の監視が自動的に起 動する よ う にし ま す。 Performance Explorer は、 テス ト 対象のサーバーの種 類に関連するサーバー パフォ ーマ ンス データ を 表示し ま す。 5 カ ス タ ム監視テ ンプレ ート を 作成するには、 [ カ ス タ ム監視テ ンプレ ート を 使用する ] ラ ジ オ ボタ ンを 選択し ま す。
監視テ ンプレ ート を 設定する 6 カ ス タ ム テ ンプレ ート フ ァ イ ルの名前を 入力し 、 [ カ ス タ ム監視テ ンプ レ ート の作成 ] ボタ ンを ク リ ッ ク し ま す。 7 新し く 作成さ れたテ ンプレ ート を 編集するには、 編集フ ィ ー ルドの隣にあ る 参照ボタ ン ([...]) を ク リ ッ ク し ま す。 フ ァ イ ルを ブラ ウ ズし 、 選択し ま す。 8 編集フ ィ ー ルド に新し いテ ンプレ ート フ ァ イ ルの名前が入った ら、 [ カ ス タ ム監視テ ンプレ ート の編集 ] を ク リ ッ ク し ま す。
監視テ ンプレ ート を 設定する 10 Performance Explorer の ワーク フ ロー バー上に あ る [ サーバーの監視 ] ボタ ン を ク リ ッ ク し ま す。 11 データ ソ ース ウィ ザー ドが表示さ れま す。 12 サーバーが提供するも のの中か ら 特定のデータ ソ ース を 選択するには、 [ 定 義済みのデータ ソ ース か ら 選択する ] ラ ジ オ ボタ ンを ク リ ッ ク し ま す。 メ モ : Performance Explorer は、 サーバーを ス キャ ンし て、 利用可能な データ ソ ース を 検索するこ と も でき ま す。