(57)【要約】      （修正有）【課題】レスポンスされたウェブページをビューワが即時的に表示する場合において、アクセス負荷とは無関係な処理が行われないようにできる負荷シミュレータを、提供する。【解決手段】負荷シミュレータ２２ａが仮想ウェブクライアントとして生成した複数のスレッドは、何れも、シナリオに従って試験対象のウェブサーバ装置１０にアクセス負荷を掛ける。そのアクセス負荷を掛ける際、各スレッドは、そのウェブサーバ装置１０からレスポンスメッセージを受け取るたびに、そのレスポンスメッセージ内のページデータに、無効化対象タグの有無，及び、無効化対象絶対パスの有無を確認し、無効化対象タグや無効化対象絶対パスが存在していると、それらを無効化してから、ビューワ２２ｂに引き渡す。【選択図】図１
2007264811.tif 000002
【特許請求の範囲】
【請求項１】
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるための負荷シミュレータであって、
コンピュータを、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
として機能させる
ことを特徴とする負荷シミュレータ。
【請求項２】
前記ソース変更手段は、前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それの少なくとも一部を実体参照形式で表現したもので、上書き更新する
ことを特徴とする請求項１記載の負荷シミュレータ。
【請求項３】
前記ソース変更手段は、前記探索手段が探し出した所定の文字列が絶対パスであった場合、前記レスポンスメッセージ内のページデータにおけるその絶対パスを、それのプロトコル部の一部を変更したもので、上書き更新する
ことを特徴とする請求項１記載の負荷シミュレータ。
【請求項４】
前記ソース変更手段は、前記絶対パスのコロンをセミコロンに置換したもので、上書き更新する
ことを特徴とする請求項３記載の負荷シミュレータ。
【請求項５】
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるためのコンピュータであって、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
を備えることを特徴とするコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブサーバ装置にアクセス負荷を掛けるためのプログラムである負荷シミュレータ及びコンピュータに、関する。
【背景技術】
【０００２】
周知のように、ウェブ負荷試験装置は、試験対象となるウェブサーバ装置にアクセス負荷を掛けてそのウェブサーバ装置の状態を観察するため、負荷シミュレータ，及び、ビューワを、含んでいる。このうち、負荷シミュレータは、仮想的にウェブクライアントとして機能するスレッドを複数生成し、それら複数の仮想ウェブクライアントに対し、試験対象となるウェブサーバ装置内のページデータをリクエストする順番を定義したシナリオを与えて、そのシナリオ通りにリクエストメッセージの送信とレスポンスメッセージの受信とを行わせことにより、各仮想ウェブクライアントがそのウェブサーバ装置から受けたレスポンスメッセージそのものを保存したりレスポンスのログを録ったりするための機能である。また、ビューワは、レスポンスメッセージ内のページデータに基づいてウェブページを表示したり、レスポンスのログ情報を一覧表示したりするための機能である。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
前述したビューワの中には、何れかの仮想ウェブクライアントが試験対象ウェブサーバ装置からレスポンスメッセージを受信するたびに、そのレスポンスメッセージ内のページデータに基づいてウェブページを即時的に表示する機能を有しているものもある。
【０００４】
しかしながら、レスポンスされたウェブページをビューワが即時的に表示する場合において、そのレスポンスメッセージ内のページデータに、そのウェブページに埋め込まれる画像のデータのリクエストを発行する手段や、新規ウインドウの起動を行う手段が、含まれていると、アクセス負荷とは無関係な処理が行われて、シナリオと無関係なレスポンスのログが残ったり、ビューワのウインドウとは別のウインドウが開かれてしまったりしてしまう。
【０００５】
本発明は、前述したような従来の事情に鑑みてなされたものであり、その課題は、レスポンスされたウェブページをビューワが即時的に表示する場合において、アクセス負荷とは無関係な処理が行われないようにすることにある。
【課題を解決するための手段】
【０００６】
上記の課題を解決するための案出された負荷シミュレータは、与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるための負荷シミュレータであって、コンピュータを、前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
として機能させることを、特徴としている。
【０００７】
このように、仮想ウェブクライアントが試験対象のウェブサーバ装置から受信したレスポンスメッセージがビューワに引き渡される前に、そのレスポンスメッセージ内のページデータにおける所定の文字列が、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新されるので、ビューワが、そのレスポンスメッセージ内のページデータに基づいてウェブページを表示するときには、その所定の文字列に基づく機能によってアクセス負荷とは無関係な処理が行われることがなくなる。
【発明の効果】
【０００８】
従って、本発明によれば、レスポンスされたウェブページをビューワが即時的に表示する場合でも、アクセス負荷とは無関係な処理が行われないようになる。
【発明を実施するための最良の形態】
【０００９】
以下、添付図面を参照しながら、本発明を実施するための一つの形態について、説明する。
【００１０】
図１は、本実施形態のウェブ負荷試験の対象となるウェブサーバ装置１０とその試験を実行するウェブ負荷試験装置２０の構成図である。
【００１１】
ウェブサーバ装置１０は、周知のように、ウェブサーバ機能が実現された装置であり、より具体的には、ウェブサーバ機能を実現するためのプログラムを汎用のコンピュータに導入してなる装置である。このウェブサーバ装置１０を構成するコンピュータは、ＣＰＵ［Central Processing Unit］１０ａ，ＤＲＡＭ［Dynamic Random Access Memory］１０ｂ，通信アダプタ１０ｃ，ストレージ１０ｄ等のハードウエアを内蔵しており、ストレージ１０ｄは、通信アダプタ１０ｃにおけるデータの入出力の管理や、ＤＲＡＭ１０ｄやストレージ１０ｄの記憶領域の管理といった基本的な機能を多くのアプリケーションソフトウエアに提供するための基本ソフトウエア１１を、記憶している。
【００１２】
そして、ウェブサーバ装置１０のストレージ１０ｄは、汎用のコンピュータをウェブサーバ装置として機能させるためのプログラム及びデータとして、ウェブサーバプログラム１２及びページデータ１３を、記憶している。ウェブサーバプログラム１２は、図示せぬウェブクライアント装置からの要求を受けると、要求されたページデータを内部の記憶装置から読み出し、或いは、生成して、通信アダプタ１０ｃを通じて要求元のウェブクライアント装置へ送信するためのプログラムである。ページデータ１３は、ウェブページを表示するためのＨＴＭＬ［HyperText Markup Language］ソースデータである。このページデータ１３は、その内部に、別のウェブページへ飛ぶためのリンクを表示する情報を含んでいても良く、また、サーバサイドプログラム又はクライアントサイドプログラムなどを含んでいても良い。
【００１３】
ウェブ負荷試験装置２０は、試験対象のウェブサーバ装置１０についてウェブ負荷試験を行うための装置である。このウェブ負荷試験装置２０は、ウェブ負荷試験ツール機能を実現するためのプログラムを一般的なパーソナルコンピュータに導入してなる装置である。従って、このウェブ負荷試験装置２０を構成するパーソナルコンピュータは、周知のように、液晶ディスプレイ等の表示装置２０ａと、キーボードやマウス等の入力装置２０ｂと、これら装置２０ａ，２０ｂに接続される本体とからなる。また、その本体は、通信アダプタ２０ｃ，ＣＰＵ２０ｄ，ＤＲＡＭ２０ｅ，ストレージ２０ｆ等のハードウエアを内蔵しており、ストレージ２０ｆは、基本ソフトウエア２１を記憶している。
【００１４】
そして、ウェブ負荷試験装置２０は、パーソナルコンピュータをウェブ負荷試験装置として機能させるためのプログラム及びデータとして、ウェブ負荷試験ツール（プログラム）２２を、記憶している。ウェブ負荷試験ツール２２は、基本的に、負荷シミュレータ２２ａ，ビューワ２２ｂのモジュールプログラム（コンポーネント）を、含んでいる。
【００１５】
負荷シミュレータ２２ａは、試験対象となるウェブサーバ装置にアクセス負荷を掛けるモジュールである。より具体的には、負荷シミュレータ２２ａは、内部に、仮想的にウェブクライアントとして機能するスレッドを複数生成し、それら複数の仮想ウェブクライアントに対し、試験対象となるウェブサーバ装置内のページデータをリクエストする順番を定義したシナリオを与えて、そのシナリオ通りにリクエストを行わせることにより、各仮想ウェブクライアントがそのウェブサーバ装置から受けたレスポンスメッセージそのものを保存したりレスポンスのログを録ったりするための機能である。
【００１６】
ビューワは、レスポンスメッセージ内のページデータに基づいてウェブページを表示したり、レスポンスのログ情報を一覧表示したりするための機能である。
【００１７】
次に、本実施形態において仮想ウェブクライアントとして生成されるスレッドが行う処理について、説明する。
【００１８】
図２及び図３は、仮想ウェブクライアントとして生成されたスレッドが実行する処理の流れを示す図である。
【００１９】
処理の開始後、最初のステップＳ１０１において、スレッド（を実行するＣＰＵ２０ｄ）は、負荷シミュレータ２２ａからシナリオを取得する処理を行う。なお、シナリオは、仮想ウェブクライアントがウェブ負荷試験で送信する幾つかのリクエストメッセージからなるとともに、それらの送信順を定義したデータである。このシナリオに含まれるリクエストメッセージ内のＵＲＬ［Uniform Resource Locator］は、何れも、試験対象となるウェブサーバ装置１０のページデータ１３に割り当てられているものとなっている。
【００２０】
次のステップＳ１０２では、当該スレッドは、負荷シミュレータ２２ａからウェブ負荷試験の開始指示があるまで待機する。そして、ウェブ負荷試験の開始指示があると、当該スレッドは、ステップＳ１０３へ処理を進める。
【００２１】
ステップＳ１０３では、当該スレッドは、シナリオの使用回数を覚えておくための変数ｎに初期値の１を代入する処理を行い、その後、第１の処理ループＬ１を実行する。
【００２２】
第１の処理ループＬ１では、当該スレッドは、ステップＳ１０１で取得したシナリオ内の各リクエストメッセージの一つ一つについて、ステップＳ１１１，Ｓ１１２，Ｓ１２１〜Ｓ１２３，Ｓ１３１〜Ｓ１３３，Ｓ１４１を順に実行する。
【００２３】
ステップＳ１１１では、当該スレッドは、処理対象リクエストメッセージを送信する処理を行う。
【００２４】
次のステップＳ１１２では、当該スレッドは、宛先からの応答として、レスポンスメッセージを受信するまで、待機する。そして、レスポンスメッセージを受信すると、当該スレッドは、ステップＳ１２１へ処理を進める。
【００２５】
ステップＳ１２１では、当該スレッドは、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから、無効化対象タグを検索する処理を行う。ここで、無効化対象タグには、<script〜，<object〜，<applet〜，<embed〜，<〜onload〜がある。
【００２６】
次のステップＳ１２２では、当該スレッドは、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから無効化対象タグが検出されたか否かを、判別する。
【００２７】
なお、スレッドとしてステップＳ１２１及びＳ１２２を実行するＣＰＵ２０ｄは、前述した探索手段に相当している。
【００２８】
そして、ステップＳ１２２において、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから無効化対象タグが検出された場合、当該スレッドは、ステップＳ１２２から処理を分岐させて、第２の処理ループＬ２を実行する。
【００２９】
第２の処理ループＬ２では、当該スレッドは、ステップＳ１２１で検出された無効化対象タグの一つ一つについて、ステップＳ１２３を順に実行する。
【００３０】
ステップＳ１２３では、当該スレッドは、このページデータにおける無効化対象タグの無効化を行う。具体的には、当該スレッドは、無効化対象タグが<script〜であれば、<script〜を、そのうちのsを実体参照形式で表現した<&#x73;cript〜で、置換する。なお、<script〜を無効化する前と後のページデータを、それぞれ、図４及び図５に示している。また、無効化対象タグが<〜onload〜であれば、<〜onload〜を、そのうちのoを実体参照形式で表現した<〜&#x6F;nload〜で、置換する。なお、<〜onload〜を無効化する前と後のページデータを、図６及び図７に示している。
【００３１】
なお、スレッドとしてステップＳ１２３を実行するＣＰＵ２０ｄは、前述したソース変更手段に相当している。
【００３２】
当該スレッドは、ステップＳ１２１で検出された無効化対象タグの全てについて、ステップＳ１２３を実行し終えると、第２の処理ループＬ２から離脱し、ステップＳ１３１へ処理を進める。
【００３３】
一方、ステップＳ１２２において、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから無効化対象タグが検出されなかった場合、当該スレッドは、ステップＳ１２２から処理を分岐させ、タグを無効化する処理を行うことなく、ステップＳ１３１へ処理を進める。
【００３４】
ステップＳ１３１では、当該スレッドは、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから、無効化対象絶対パスを検索する処理を行う。ここで、無効化対象絶対パスとは、<script〜，<frame〜，<iframe〜，<img〜，<link〜，<a〜，<area〜に含まれる絶対パスを言う。
【００３５】
次のステップＳ１３２では、当該スレッドは、ステップＳ１１２で受信したレスポンスメッセージ内のページデータから無効化対象絶対パスが検出されたか否かを、判別する。
【００３６】
なお、スレッドの機能としてステップＳ１３１及びＳ１３２を実行するＣＰＵ２０ｄは、前述した探索手段に相当している。
【００３７】
そして、このレスポンスメッセージ内のページデータから無効化対象絶対パスが検出された場合、当該スレッドは、ステップＳ１３２から処理を分岐させて、第３の処理ループＬ３を実行する。
【００３８】
第３の処理ループＬ３では、当該スレッドは、ステップＳ１３１で検出された無効化対象絶対パスの一つ一つについて、ステップＳ１３３を順に実行する。
【００３９】
ステップＳ１３３では、当該スレッドは、このページデータにおける無効化対象絶対パスの無効化を行う。具体的には、当該スレッドは、無効化対象絶対パス内のプロトコル部の末尾にあるコロンをセミコロンに置換する。なお、プロトコル部の末尾をセミコロンに置換する前と後の絶対パスを含んだイメージタグを、図８（ａ）及び（ｂ）に示している。
【００４０】
なお、スレッドとしてステップＳ１３３を実行するＣＰＵ２０ｄは、前述したソース変更手段に相当している。
【００４１】
当該スレッドは、ステップＳ１３１で検出された無効化対象絶対パスの全てについて、ステップＳ１３３を実行し終えると、第３の処理ループＬ３から離脱し、ステップＳ１４１へ処理を進める。
【００４２】
ステップＳ１４１では、当該スレッドは、ステップＳ１２１〜Ｓ１２３，Ｓ１３１〜Ｓ１３３を行った後のページデータを、ビューワ２２ｂに引き渡す処理を行う。なお、ビューワ２２ｂは、このページデータを受け取ると、それに基づいてウェブページを表示装置２０ａに表示する。
【００４３】
なお、スレッドとしてステップＳ１４１を実行するＣＰＵ２０ｄは、前述した出力手段に相当している。
【００４４】
当該スレッドは、ステップＳ１０１で取得したシナリオ内のリクエストメッセージの全てについて、ステップＳ１１１，Ｓ１１２，Ｓ１２１〜Ｓ１２３，Ｓ１３１〜Ｓ１３３，Ｓ１４１を実行し終えると、第１の処理ループＬ１から離脱し、ステップＳ１５１へ処理を進める。
【００４５】
ステップＳ１５１では、当該スレッドは、変数ｎの代入値を１繰り上げる処理を行う。      
【００４６】
次のステップＳ１５２では、当該スレッドは、変数ｎの代入値が所定の上限値を超過しているか否かを、判別する。
【００４７】
そして、変数ｎの代入値が所定の上限値を超過していなかった場合、当該スレッドは、ステップＳ１５２から処理を分岐させ、第１の処理ループＬ１の実行を開始する。
【００４８】
一方、変数ｎの代入値が所定の上限値を超過していた場合、当該スレッドは、図２及び図３に係る処理を終了する。
【００４９】
次に、本実施形態の負荷シミュレータ２２ａによる作用及び効果について説明する。
【００５０】
前述したように、負荷シミュレータ２２ａが仮想ウェブクライアントとして生成した複数のスレッドは、何れも、シナリオに従って試験対象のウェブサーバ装置１０にアクセス負荷を掛ける。そのアクセス負荷を掛ける際、各スレッドは、そのウェブサーバ装置１０からレスポンスメッセージを受け取るたびに、そのレスポンスメッセージ内のページデータに、無効化対象タグの有無，及び、無効化対象絶対パスの有無を確認し（ステップＳ１２１，Ｓ１２２，Ｓ１３１，Ｓ１３２）、無効化対象タグや無効化対象絶対パスが存在していると、それらを無効化してから（ステップＳ１２３，Ｓ１３３）、ビューワ２２ｂに引き渡す（ステップＳ１４１）。
【００５１】
ここで、レスポンスメッセージ内のページデータにおける無効化対象タグは、ビューワ２２ｂがレンダリングを行う際に、そのウェブページに埋め込まれる画像のデータのリクエストの発行や、新規ウインドウの起動など、手段アクセス負荷とは無関係な処理を行わせるものである。
【００５２】
例えば、無効化対象タグである<script〜を無効化する前の図４のページデータに基づいてレンダリングが行われた場合、図９に示されるように、ビューワ２２ｂのウインドウとは別の新規ウインドウが生成されてしまう。しかし、<script〜を無効化した後の図５のページデータに基づいてレンダリングが行われた場合、図１０に示されるように、ビューワ２２ｂのウインドウとは別の新規ウインドウが生成されることがない。従って、アクセス負荷とは無関係な処理が行われてしまうことがなくなる。
【００５３】
また、例えば、無効化対象タグである<〜onload〜を無効化する前の図６のページデータに基づいてレンダリングが行われた場合でも、図１１に示されるように、ビューワ２２ｂのウインドウとは別の新規ウインドウが生成されてしまう。しかし、<〜onload〜を無効化した後の図７のページデータに基づいてレンダリングが行われた場合、図１２に示されるように、ビューワ２２ｂのウインドウとは別の新規ウインドウが生成されることがない。従って、アクセス負荷とは無関係な処理が行われてしまうことがなくなる。
【００５４】
さらに、ページデータに含まれる無効化対象絶対パスが、図８（ａ）に示されるように、無効化される前であると、ビューワ２２ｂがレンダリングを行ったときに、その絶対パスへリクエストが行われてしまう。しかし、ページデータに含まれる無効化対象絶対パスが、図８（ｂ）に示されるように、無効化された後であれば、その絶対パスが通信規約上有効なものではなくなるので、リクエストが発生しなくなる。従って、アクセス負荷とは無関係な処理が行われてしまうことがなくなる。
【００５５】
なお、本実施形態では、絶対パスを無効化していたが、相対パスは、無効化する必要がない。相対パスを含んだイメージタグ<img〜等によっては、ウェブサーバ装置１０へのリクエストが発行されないからである。
【００５６】
（付記１）
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるための負荷シミュレータであって、
コンピュータを、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
として機能させる
ことを特徴とする負荷シミュレータ。
【００５７】
（付記２）
前記ソース変更手段は、前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それの少なくとも一部を実体参照形式で表現したもので、上書き更新する
ことを特徴とする付記１記載の負荷シミュレータ。
【００５８】
（付記３）
前記ソース変更手段は、前記探索手段が探し出した所定の文字列が絶対パスであった場合、前記レスポンスメッセージ内のページデータにおけるその絶対パスを、それのプロトコル部の一部を変更したもので、上書き更新する
ことを特徴とする請求項１記載の負荷シミュレータ。
【００５９】
（付記４）
前記ソース変更手段は、前記絶対パスのコロンをセミコロンに置換したもので、上書き更新する
ことを特徴とする請求項３記載の負荷シミュレータ。
【００６０】
（付記５）
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるための負荷シミュレーション方法であって、
コンピュータを、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
として機能させる
ことを特徴とする負荷シミュレータを記憶したコンピュータ読み取り可能な記憶媒体。
【００６１】
（付記６）
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるためのコンピュータであって、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
を備えることを特徴とするコンピュータ。
【００６２】
（付記７）
与えられたシナリオに従ってリクエストメッセージの送信とレスポンスメッセージの受信とを順に行う仮想ウェブクライアントを複数用いて試験対象のウェブサーバ装置にアクセス負荷を掛けるための負荷シミュレーション方法であって、
コンピュータが、
前記仮想ウェブクライアントが通信装置を通じて前記ウェブサーバ装置からレスポンスメッセージを受信すると、そのレスポンスメッセージ内のページデータから所定の文字列を探索する探索手段，
前記レスポンスメッセージ内のページデータにおける前記探索手段が探し出した所定の文字列を、それに基づく機能が無効化されるようにその一部の文字を変更したもので、上書き更新するソース変更手段，及び、
前記ソース変更手段が更新したページデータをビューワに引き渡す出力手段
として機能する
ことを特徴とする負荷シミュレーション方法。
【図面の簡単な説明】
【００６３】
【図１】本実施形態のウェブ負荷試験の対象となるウェブサーバ装置とその試験を実行するウェブ負荷試験装置の構成図
【図２】仮想ウェブクライアントとして生成されたスレッドが実行する処理の流れを示す図
【図３】仮想ウェブクライアントとして生成されたスレッドが実行する処理の流れを示す図
【図４】<script〜を無効化する前のページデータを示す図
【図５】<script〜を無効化した後のページデータを示す図
【図６】<〜onload〜を無効化する前のページデータを示す図
【図７】<〜onload〜を無効化した後のページデータを示す図
【図８】プロトコル部の末尾をセミコロンに置換する前と後の絶対パスを示す図
【図９】図４のページデータに基づいて表示されたウェブページを示す図
【図１０】図５のページデータに基づいて表示されたウェブページを示す図
【図１１】図６のページデータに基づいて表示されたウェブページを示す図
【図１２】図７のページデータに基づいて表示されたウェブページを示す図
【符号の説明】
【００６４】
１０    ウェブサーバ装置
１０ａ  ＣＰＵ
１０ｃ  通信アダプタ
１０ｄ  ストレージ
１２    ウェブサーバプログラム
１３    ページデータ
２０    ウェブ負荷試験装置
２０ａ  表示装置
２０ｂ  入力装置
２０ｃ  通信アダプタ
２０ｄ  ＣＰＵ
２０ｆ  ストレージ
２２    ウェブ負荷試験ツール
２２ａ  負荷シミュレータ
２２ｂ  ビューワ
【図１】
2007264811.tif 000003
【図２】
2007264811.tif 000004
【図３】
2007264811.tif 000005
【図４】
2007264811.tif 000006
【図５】
2007264811.tif 000007
【図６】
2007264811.tif 000008
【図７】
2007264811.tif 000009
【図８】
2007264811.tif 000010
【図９】
2007264811.tif 000011
【図１０】
2007264811.tif 000012
【図１１】
2007264811.tif 000013
【図１２】
2007264811.tif 000014