JP2006031178A - 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム - Google Patents

負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム Download PDF

Info

Publication number
JP2006031178A
JP2006031178A JP2004206362A JP2004206362A JP2006031178A JP 2006031178 A JP2006031178 A JP 2006031178A JP 2004206362 A JP2004206362 A JP 2004206362A JP 2004206362 A JP2004206362 A JP 2004206362A JP 2006031178 A JP2006031178 A JP 2006031178A
Authority
JP
Japan
Prior art keywords
load test
load
target value
time
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004206362A
Other languages
English (en)
Inventor
Motofumi Tonaki
元史 渡名喜
Yuichi Saida
雄一 齋田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004206362A priority Critical patent/JP2006031178A/ja
Publication of JP2006031178A publication Critical patent/JP2006031178A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】負荷テストにおける性能目標を満たすためのパラメータを自動で設定可能とする。
【解決手段】オペレータ操作手順をスクリプトとして取得し記憶装置に格納する操作記憶部110と、スクリプトを読み出して再生し被テスト対象装置への負荷を実現するスクリプト再生部111と、複数の仮想クライアントの動作を制御して負荷テストを実行する仮想クライアント制御部112と、負荷テスト実行に際し処理リクエストに対する応答時間の情報を取得するテスト結果取得部114と、応答時間に基づき単位時間当たりに処理可能な処理リクエスト件数を算定する処理可能件数算定部115と、目標値が処理可能件数を下回るか否か判定し目標値が処理可能件数を下回ると判定された場合、仮想クライアント数、及び処理リクエスト件数を再設定する負荷テスト実施装置を構成する。
【選択図】 図1

Description

本発明は、負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラムに関し、特に、ネットワーク上に構築されたクライアント/サーバ型のシステムに対して性能評価のための負荷テストを実施するにあたり、少数のテスト実行端末内に複数の仮想クライアントを生成し、仮想クライアントからテスト対象システムに処理要求を投入することでテストを実現する負荷テスト実施装置及び負荷テスト実施方法に関する。
システム構成の一形態として近年広く採用されているクライアント/サーバ型のシステムで性能評価のための負荷テストを行う場合、実際に複数のクライアントからサーバへアクセスする、または負荷テストツールと呼ばれるソフトウェアによりテスト実行端末内に複数の仮想クライアントを生成して負荷を発生させることによりサーバへの負荷を発生させて状態を計測するのが一般的な方法である。
例えば、ネットワーク上のサーバに対するクライアントによるアクセスの負荷をテストする負荷テスト実行装置であって、前記サーバにアクセスする複数のクライアント処理を同時に動作させるクライアント処理管理手段と、前記複数のクライアント処理のそれぞれに異なる仮想ネットワークアドレスを設定する仮想ネットワークアドレス設定手段と、前記クライアント処理のそれぞれにより前記サーバにアクセスする時に、生成されたネットワークパケット内の情報をチェックして、当該パケット内の送信元ネットワークアドレス情報を、当該装置の持つ実際のネットワークアドレスから、前記仮想ネットワークアドレス設定手段によって当該クライアント処理に設定された仮想ネットワークアドレスに書き換える送信パケット書き換え手段と、前記サーバから受信したネットワークパケット内の宛先ネットワークアドレス情報をチェックして、当該装置内で管理されている仮想ネットワークアドレスであれば、当該パケット内の宛先ネットワークアドレス情報を、当該装置の実際のネットワークアドレスに書き換えて、当該パケットを当該仮想ネットワークアドレスが設定されたクライアント処理に渡す受信パケット書き換え手段とを備えることを特徴とする負荷テスト実行装置(特許文献1参照)などが提案されている。
特開平2003−46569号公報
しかしながら従来の負荷テスト実施装置では、負荷の大きさを左右する仮想クライアントの数やスクリプトなどに記録された操作を反復試行する際の遅延時間、記録された操作に対して仮想クライアントの振る舞いをシミュレートする思考遅延時間などをテスト実行時のパラメータとして人間が設定する必要があった。これらのパラメータは負荷の大きさを左右し、負荷テストの結果に大きな影響を与えるが、被テストシステムの負荷量に応じて調整する必要があり事前に適切な値を設定することが難しい。そのため専門知識を持った技術者が経験的に値を設定する必要があり、被テストシステムの管理者や開発者が独自にテストを実施することは難しかった。
また、テキスト情報や入力項目が多い画面においてはユーザの操作間隔も長くなることが一般に想定されるが、従来の負荷テストツールで画面内容に対応した思考遅延時間を実現する場合、各画面ごとに設定を行う必要があった。
そこで本発明は上記課題を鑑みてなされたものであり、負荷テストにおける性能目標を満たすためのパラメータを自動で設定可能とする負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラムを提供することを主たる目的とする。
上記課題を解決する本発明の負荷テスト実施装置は、ネットワーク上に構築されたクライアント/サーバ型のシステムに対して性能評価のための負荷テストを実施する負荷テストの実施装置であって、クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納する操作記憶部と、前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現するスクリプト再生部と、複数の前記仮想クライアントの動作を制御して負荷テストを実行する仮想クライアント制御部と、予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得するテスト結果取得部と、前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定する、処理可能件数算定部と、予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定する、仮想クライアント数再設定部と、前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定する、再判定部と、前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力する、結果出力部と、を備えることを特徴とする。
また、本発明の負荷テスト実施方法は、ネットワーク上に構築されたクライアント/サーバ型のシステムに対する、性能評価のための負荷テストをコンピュータにより実施する方法であって、クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納し、前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現し、複数の前記仮想クライアントの動作を制御して負荷テストを実行し、予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得し、前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定し、予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定し、前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定し、 前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力することを特徴とする。
また、本発明の負荷テスト実施プログラムは、ネットワーク上に構築されたクライアント/サーバ型のシステムに対する、性能評価のための負荷テストの方法をコンピュータに実行させるプログラムであって、クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納するステップと、前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現するステップと、複数の前記仮想クライアントの動作を制御して負荷テストを実行するステップと、予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得するステップと、前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定するステップと、予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定するステップと、前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定するステップと、前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力するステップと、を含むことを特徴とする。
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
本発明によれば、負荷テストにおける性能目標を満たすためのパラメータを自動で設定可能とできる。
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は本実施形態における負荷テスト実施装置を含むネットワーク構成図である。本発明の負荷テスト実施装置100(以下、実施装置100)は例えばサーバコンピュータであり、本発明の負荷テスト実施方法を実行する機能を実現すべくハードディスクドライブなどのプログラムデータベース101に格納されたプログラム102をメモリ103に読み出し、演算装置たるCPU104により実行する。
また、実施装置100は、LANやインターネット等のネットワーク130を介して、負荷テストの実施対象たる、被テスト対象装置200らの外部装置と接続してデータ授受を実行するI/O部105を備える。更に、実施装置100は、目標値データベース125、スクリプトデータベース126、思考時間テーブル127を利用可能である。
以下に、前記実施装置100が例えばプログラム102に基づき構成・保持する機能部につき説明を行う。実施装置100は、クライアント5におけるオペレータ操作手順をスクリプト10として取得し、これを記憶装置(図中:スクリプトデータベース126)に格納する操作記憶部110を備える。
また、実施装置100は、前記記憶装置より前記スクリプト10を読み出して再生し、仮想クライアントからの被テスト対象装置200への負荷を実現するスクリプト再生部111を備える。
また、実施装置100は、複数の前記仮想クライアントの動作を制御して負荷テストを実行する仮想クライアント制御部112を備える。
また、前記操作記憶部110が、クライアント5におけるオペレータ操作手順をスクリプト10として取得すると共に、当該スクリプト10とオペレータ操作対象となるコンテンツ50の情報とを記憶装置に格納するものであれば、実施装置100は、前記コンテンツ情報を、コンテンツ属性に応じたオペレータ関与時間を定めた思考時間テーブル127に照合し、当該コンテンツ50に対する負荷テスト実施時の思考遅延時間を推定する思考遅延時間推定部113を備えるものとする。
また、実施装置100は、予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置200における応答時間の情報を取得するテスト結果取得部114を備える。
また、実施装置100は、前記応答時間に基づき、前記被テスト対象装置200における単位時間当たりに処理可能な処理リクエスト件数を算定する、処理可能件数算定部115を備える。
また、実施装置100は、予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定する、仮想クライアント数再設定部116を備える。
また、実施装置100は、前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定する、再判定部117を備える。
また、実施装置100は、前記処理リクエスト件数が前記目標値を満たすか否かの判定により、前記処理リクエスト件数が前記目標値を満たさない場合には、前記再設定用の仮想クライアント数の算定処理を再実行する、仮想クライアント数再々設定部118を備える。
また、前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力する、結果出力部119を備える。
なお、実施装置100の機能のうち、スクリプト再生部の機能のみを実装したエージェント300を実施装置100と別途設けることとしてもよい。このエージェント300は、大規模な負荷テストを実現する際に複数設けてスクリプトの再生に利用することは有用である。
次に、本実施形態の負荷テスト実施装置が利用するデータベースおよびテーブルについて説明する。図2は本実施形態における、(a)目標値データベース、(b)スクリプトデータベース、(c)思考時間テーブル、のデータ構成例である。
目標値データベース125は、予め定めていた単位時間あたりの負荷処理件数の目標値を格納したデータベースであり、例えば負荷テストのIDをキーとして、前記目標値のデータを関連づけたレコードの集合体となっている。
また、スクリプトデータベース126は、クライアント5におけるオペレータ操作手順を取得して生成したスクリプト10と、オペレータ操作対象となるコンテンツ50の情報とを格納するものであり、例えば、負荷テストのIDをキーとして、スクリプトファイル、コンテンツ情報などを関連づけたレコードの集合体となっている。なお、コンテンツ50の情報としては、コンテンツ50としての画面データが含む、テキストデータやチェックボックス、ラジオボタンなどの情報量が含まれるものとする。
また、思考時間テーブル127は、コンテンツ属性(前記コンテンツの情報)に応じたオペレータ関与時間を定めたテーブルであり、例えばコンテンツ属性をキーとして、思考遅延時間を関連づけたレコードの集合体となっている。思考遅延時間とは、例えばコンテンツ50をオペレータがクライアント5において認識するための時間とできる。
なお、これまで示した実施装置100における機能部110〜119は、ハードウェアとして実現してもよいし、HDDやメモリなどの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、前記CPU104がプログラム実行に合わせて記憶装置より該当プログラムをメモリ103に読み出して、これを実行することとなる。
また、前記ネットワーク130に関しては、インターネットやLANの他、専用回線やWAN(Wide Area Network)、電灯線ネットワーク、無線ネットワーク、公衆回線網、携帯電話網など様々なネットワークを採用することも出来る。また、VPNなど仮想専用ネットワーク技術を用いれば、インターネットを採用した際にセキュリティ性を高めた通信が確立され好適である。
次に、本実施形態における処理の概要を図3に即して説明しておく。本実施形態においては、まず(1)操作の記録:負荷テストに対応する、クライアント5でのオペレータの一連の操作手順についてこれを記録する。ここで記録するものをスクリプト10と呼ぶ。スクリプト10には操作内容だけでなくクライアント5に出力される画面データのテキスト量、チェックボックス、テキストボックスなどのコンテンツ属性および数、さらに操作の際に必要とした処理時間も併せて記録する。
次に、(2)性能目標の設定:例えば負荷テストを行う際の性能目標として、「単位時間の処理件数」の設定を受付ける。本実施形態においては例えば単位時間あたりの処理リクエストの処理件数を適用する(他に、仮想クライアント数の初期値や上限値、レスポンス時間の上限値などを設定するとしてもよい)。そして、(3)負荷テスト実行時パラメータの算出:思考遅延時間を、スクリプトデータベース126に記録されたコンテンツ情報の前記思考時間テーブル127への照合処理により算出する。なお、図2で示した思考時間テーブル127は一つの具体例に過ぎず、コンテンツ属性の種別や思考遅延時間は、状況に応じて種々設定可能であるものとする。また、この思考時間テーブル127はオペレータ等のユーザによりカスタマイズ可能としても良い。
続いて、(4)負荷テストの実施:仮想クライアントによる被テスト対象装置200に対するアクセスを行って負荷テストを実施する。また、(5)結果の取得:負荷テスト時のデータを収集する。更に、(6)パラメータ再計算:(3)の手順により設定した初期値を元に1回ないし複数回の負荷テスト(試行)を行った後に、(5)で得られた結果を用いてパラメータの再計算を行う。
以下、上記のような手順に則した、本実施形態における負荷テスト実施方法の基本手順について、図に基づき説明する。なお、以下で説明する負荷テスト実施方法に対応する各種動作は、負荷テスト実施装置100がメモリ103に読み出して実行するプログラム102によって実現される。そして、このプログラム102は、以下に説明される各種の動作を行うためのコードから構成されている。
図4は本実施形態の負荷テスト実施方法の基本手順を示すフロー図である。実施装置100は、まず性能目標(前記目標値)を設定し(S1000)、前記仮想クライアント数や思考遅延時間などのパラメータを初期算出する(S1002)。実施装置100は、パラメータ算出後、負荷テストを実施し(S1003)、テスト実施結果を取得する(S1004)。
また、実施装置100は、前記設定した性能目標を満たしているかどうか確認する(S1005)。ここで、性能目標を満たしているとなれば(s1005:Yes)、前記パラメータは適切な値であるとして処理を終了する。
他方、性能目標を満たしていないとなれば(s1005:No)、前記パラメータを変更することで当該性能目標を満たすことが可能なものであるかどうか確認する(S1006)。例えば、パラメータをいくら変更したとしても、被テスト対象装置200の性能限界から前記目標を満たすことが不可能なであるとなれば(s1006:No)、処理を終了する。一方、パラメータを変更することで目標を満たすことが可能ならば(s1006:Yes)、仮想クライアント数か遅延時間のいずれかを変更し(S1007)、パラメータを再算出する(S1002)。以下、目標達成までステップs1002〜s1007の処理を繰り返すこととなる。
次に、上記基本手順をふまえた、本実施形態における負荷テスト実施方法の実際手順を説明する。図5は本実施形態の負荷テスト実施方法の実際手順を示すフロー図である。まず、実施装置100は、クライアント5におけるオペレータ操作手順をスクリプト10として取得すると共に、当該スクリプト10とオペレータ操作対象となるコンテンツ50の情報とをスクリプトデータベース126に格納する(s1100)。
続いて、実施装置100は、前記スクリプトデータベース126より前記スクリプト10を読み出して再生し、仮想クライアントからの被テスト対象装置200への負荷を実現する(s1101)。本実施形態においては仮想クライアントとして前記エージェント300を想定するものとし、当該エージェントの動作制御を実施装置100が行って負荷テストを実行するものとする。
次に、実施装置100は、予め定めた初期数(前出のパラメータの一例)の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置200における応答時間x(図6参照)の情報を取得する(s1102)。
また、実施装置100は、前記スクリプトデータベース126におけるコンテンツ50の情報を、コンテンツ属性に応じたオペレータ関与時間を定めた思考時間テーブル127に照合し、当該コンテンツ50に対する負荷テスト実施時の思考遅延時間を推定する(s1103)。
ここで、思考遅延時間の算出例を見てみる。図6は本実施形態のコンテンツたる画面データ例と負荷テストに伴う思考遅延時間の考え方を示す図である。コンテンツ50としての画面50は、あるログイン画面だとする。このログイン画面は、ユーザに提示されるテキスト51がおよそ760バイトのサイズであり、またテキストボックス52が2個、チェックボックス53が3個含まれている。
前記思考時間テーブル127に設定されたテキスト100バイトあたりの思考遅延時間が0.3秒で、テキストボックスおよびチェックボックス1個あたりの思考遅延時間をそれぞれ3秒および0.5秒だとすると、この画面50における思考遅延時間iは9.78秒となる。なお、思考遅延時間iはユーザごとに異なるため、負荷テストの際には算定した前記思考遅延時間値を中心とする正規分布もしくは一様分布に従った思考遅延時間を設定するものとできる。
実施装置100は、また、前記応答時間xから前記推定した思考遅延時間iの総和Σi(数4)を減算して負荷処理時間を算定すると共に、前記仮想クライアント300の初期数yを前記負荷処理時間で除算して単位時間当たりに処理可能な処理リクエスト件数を算定する(s1104)。
ここで、予め定めていた単位時間あたりの負荷処理件数の目標値aが、前記算定した処理可能件数を下回るか否か判定する(s1105)。この判定にあたって、例えば、単位仮想クライアント300の処理においてn回の操作が存在するとき、前述の通り思考遅延時間i〜iを含めた応答時間をx秒とする。また仮想クライアント300の数(ここでは初期数y)をyとする。このとき前記目標値aが、1時間あたりの処理件数を示すものである場合、上記目標値を満たすことが可能かどうかの判断基準は次の数式で求める。
Figure 2006031178
Figure 2006031178
Figure 2006031178
Figure 2006031178
数1において不等号が成立する場合、つまり判定により前記目標値aが前記処理可能件数を下回ると判定された場合(s1105:Yes)、仮想クライアント数yもしくは思考遅延時間iを再計算して設定しなおすことにより目標値aを満たすことが出来ると判定する。目標値aを満たすことができるとならば、本実施形態においては例えば数2に示す通り、前記目標値aに前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定する(s1106)。
具体例として、例えば図6に示すような繰り返し処理を被テスト対象装置200が実行し、1時間あたり処理件数、つまり前記目標値aが3,600件であるとする。この場合、画面50に基づくコンテンツ情報から算出した思考遅延時間i〜iの合計が40秒、反復間の遅延時間が5秒であったとき、初期数として設定した50の仮想クライアント300で1反復処理に要した時間が60秒であったとする。
この時、1仮想クライアントが1時間に実行できる処理件数は60回であるため、50仮想クライアントでは目標値a:3600での負荷テストを実現することが出来ない。そこで数2により新たな仮想クライアント数yを算出すると60を得る。なお、このように仮想クライアント数yを増加させた場合、負荷の増大により1仮想クライアントあたりの処理時間が増加する場合がある。具体的には数3に示した値を思考遅延時間i〜iのそれぞれに分配して加えることにより負荷量の調整を行うこととできる。ここで、数3の直感的な意味は、増加した仮想クライアント300による負荷の増大分であり、これを思考遅延時間に分配することで被テスト対象装置200へのアクセス集中を緩和することが目的である。
他方、前記ステップs1105の判定により、前記目標値aが前記処理可能件数を下回らないと判定された場合(s1105:No)、仮想クライアント数のなどのパラメータを変更しても前記目標値aを達成できないとして処理を終了する。
また、前記ステップs1106に続き、実施装置100は、前記再設定用の仮想クライアント数による前記負荷テストを再実行する(s1107)。また、この再実行に際し、実施装置100は、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値aを満たすか否か判定する(s1108)。
ここで、前記処理リクエスト件数が前記目標値aを満たすか否かの判定により、前記処理リクエスト件数が前記目標値aを満たさない場合(s1108:No)、前記再設定用の仮想クライアント数yの算定処理を再実行する(s1109)。これにより、再々設定用の仮想クライアント数が算定される。実施装置100は、再々設定された仮想クライアント数による負荷テストを実行し(s1110)、処理を前記ステップs1108に戻す。このステップs1108にて処理リクエスト件数が目標値aを満たすか否かを判定し、満たさなければ、更に仮想クライアント数の設定を同様に繰り返すこととなる。
前記処理リクエスト件数が目標値aを満たすとなれば(s1108)、当該負荷テストの結果を出力インターフェイスに出力し(s1111)、処理は終了する。
本発明によれば、負荷テスト実施時に専門的な知識や経験を必要としないため、開発者や管理者主体でテストを行うことが可能となり、開発工数の削減・製品品質の向上が期待できる。またユーザの操作する画面情報を基にしたシミュレーションが可能となり、より実運用に近い条件でテストを行うことが可能となる。さらに特に重要視される性能目標から設定してテストを行うことから、ボトルネックの早期発見・対策が可能となる。
したがって、負荷テストにおける性能目標を満たすためのパラメータを自動で設定可能とできる。
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
本実施形態における負荷テスト実施装置を含むネットワーク構成図である。 本実施形態の負荷テスト実施概要を示す図である 本実施形態における、(a)目標値データベース、(b)スクリプトデータベース、(c)思考時間テーブル、のデータ構成例である。。 本実施形態の負荷テスト実施方法の基本手順を示すフロー図である。 本実施形態の負荷テスト実施方法の実際手順を示すフロー図である。 本実施形態のコンテンツたる画面データ例と負荷テストに伴う思考遅延時間の考え方を示す図である。
符号の説明
5 クライアント
50 スクリプト
100 負荷テスト実施装置、実施装置
101 プログラムデータベース
102 プログラム
103 メモリ
104 CPU
105 I/O部
110 操作記憶部
111 スクリプト再生部
112 仮想クライアント制御部
113 思考遅延時間推定部
114 テスト結果取得部
115 処理可能件数算定部
116 仮想クライアント数再設定部
117 再判定部
118 仮想クライアント数再々設定部
119 結果出力部
125 目標値データベース
126 スクリプトデータベース
127 思考時間テーブル
130 ネットワーク
200 被テスト対象装置
300 エージェント

Claims (6)

  1. ネットワーク上に構築されたクライアント/サーバ型のシステムに対して性能評価のための負荷テストを実施する負荷テストの実施装置であって、
    クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納する操作記憶部と、
    前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現するスクリプト再生部と、
    複数の前記仮想クライアントの動作を制御して負荷テストを実行する仮想クライアント制御部と、
    予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得するテスト結果取得部と、
    前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定する、処理可能件数算定部と、
    予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定する、仮想クライアント数再設定部と、
    前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定する、再判定部と、
    前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力する、結果出力部と、
    を備えることを特徴とする負荷テスト実施装置。
  2. 請求項1において、
    前記処理リクエスト件数が前記目標値を満たすか否かの判定により、前記処理リクエスト件数が前記目標値を満たさない場合には、前記再設定用の仮想クライアント数の算定処理を再実行する、仮想クライアント数再々設定部を備えることを特徴とする負荷テスト実施装置。
  3. 請求項1または2において、
    前記操作記憶部が、クライアントにおけるオペレータ操作手順をスクリプトとして取得すると共に、当該スクリプトとオペレータ操作対象となるコンテンツの情報とを記憶装置に格納するものであり、
    前記コンテンツ情報を、コンテンツ属性に応じたオペレータ関与時間を定めた思考時間テーブルに照合し、当該コンテンツに対する負荷テスト実施時の思考遅延時間を推定する思考遅延時間推定部を備え、
    前記処理可能件数算定部が、前記応答時間から前記推定した思考遅延時間を減算して負荷処理時間を算定すると共に、前記仮想クライアントの初期数を前記負荷処理時間で除算して単位時間当たりに処理可能な処理リクエスト件数を算定するものであることを特徴とする負荷テスト実施装置。
  4. 請求項1〜3のいずれかにおいて、
    前記思考時間テーブルにおけるコンテンツ属性が、クライアントにて出力される画面の、テキストデータ、テキストボックス、およびボタンの少なくともいずれかの属性を含む画面構成の属性であることを特徴とする負荷テスト実施装置。
  5. ネットワーク上に構築されたクライアント/サーバ型のシステムに対する、性能評価のための負荷テストをコンピュータにより実施する方法であって、
    クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納し、
    前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現し、
    複数の前記仮想クライアントの動作を制御して負荷テストを実行し、
    予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得し、
    前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定し、
    予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定し、
    前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定し、 前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力することを特徴とする負荷テスト実施方法。
  6. ネットワーク上に構築されたクライアント/サーバ型のシステムに対する、性能評価のための負荷テストの方法をコンピュータに実行させるプログラムであって、
    クライアントにおけるオペレータ操作手順をスクリプトとして取得し、これを記憶装置に格納するステップと、
    前記記憶装置より前記スクリプトを読み出して再生し、仮想クライアントからの被テスト対象装置への負荷を実現するステップと、
    複数の前記仮想クライアントの動作を制御して負荷テストを実行するステップと、
    予め定めた初期数の仮想クライアントからの負荷テスト実行に際し、処理リクエストに対する、被テスト対象装置における応答時間の情報を取得するステップと、
    前記応答時間に基づき、前記被テスト対象装置における単位時間当たりに処理可能な処理リクエスト件数を算定するステップと、
    予め定めていた単位時間あたりの負荷処理件数の目標値が、前記算定した処理可能件数を下回るか否か判定し、当該判定により前記目標値が前記処理可能件数を下回ると判定された場合、前記目標値に前記負荷処理時間を乗じて再設定用の仮想クライアント数を算定するステップと、
    前記再設定用の仮想クライアント数による前記負荷テストの再実行に際し、前記処理リクエスト件数を再計算し、当該処理リクエスト件数が前記目標値を満たすか否か判定するステップと、
    前記判定により、前記処理リクエスト件数が前記目標値を満たす場合には、当該負荷テストの結果を出力インターフェイスに出力するステップと、
    を含むことを特徴とする負荷テスト実施プログラム。
JP2004206362A 2004-07-13 2004-07-13 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム Pending JP2006031178A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004206362A JP2006031178A (ja) 2004-07-13 2004-07-13 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004206362A JP2006031178A (ja) 2004-07-13 2004-07-13 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム

Publications (1)

Publication Number Publication Date
JP2006031178A true JP2006031178A (ja) 2006-02-02

Family

ID=35897482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004206362A Pending JP2006031178A (ja) 2004-07-13 2004-07-13 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム

Country Status (1)

Country Link
JP (1) JP2006031178A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007226280A (ja) * 2006-02-21 2007-09-06 Hitachi Ltd 計算機リソース割当管理方法および計算機リソース割当管理装置
JP2008234151A (ja) * 2007-03-19 2008-10-02 Fujitsu Ltd シナリオ作成プログラム及びシナリオ作成装置
KR20090090624A (ko) * 2008-02-21 2009-08-26 (주)엔 소프트 컨버전스 환경에서의 부하테스트 방법 및 그 시스템
WO2011007463A1 (ja) * 2009-07-17 2011-01-20 日本電気株式会社 情報処理システム、情報処理方法および記憶媒体
WO2013145628A1 (ja) * 2012-03-30 2013-10-03 日本電気株式会社 情報処理装置及び負荷テスト実施方法
JP2018502390A (ja) * 2014-12-23 2018-01-25 エントイット ソフトウェア エルエルシーEntit Software Llc 負荷テスト

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007226280A (ja) * 2006-02-21 2007-09-06 Hitachi Ltd 計算機リソース割当管理方法および計算機リソース割当管理装置
JP4594877B2 (ja) * 2006-02-21 2010-12-08 株式会社日立製作所 計算機リソース割当管理方法および計算機リソース割当管理装置
JP2008234151A (ja) * 2007-03-19 2008-10-02 Fujitsu Ltd シナリオ作成プログラム及びシナリオ作成装置
KR20090090624A (ko) * 2008-02-21 2009-08-26 (주)엔 소프트 컨버전스 환경에서의 부하테스트 방법 및 그 시스템
WO2011007463A1 (ja) * 2009-07-17 2011-01-20 日本電気株式会社 情報処理システム、情報処理方法および記憶媒体
JP5522171B2 (ja) * 2009-07-17 2014-06-18 日本電気株式会社 情報処理システム及び情報処理方法
US8819174B2 (en) 2009-07-17 2014-08-26 Nec Corporation Information processing system, information processing method, and storage medium
WO2013145628A1 (ja) * 2012-03-30 2013-10-03 日本電気株式会社 情報処理装置及び負荷テスト実施方法
JP2018502390A (ja) * 2014-12-23 2018-01-25 エントイット ソフトウェア エルエルシーEntit Software Llc 負荷テスト
US11599340B2 (en) 2014-12-23 2023-03-07 Micro Focus Llc Load testing

Similar Documents

Publication Publication Date Title
US10275345B2 (en) Application experiment system
US11196839B1 (en) System and method for classifying API requests in API processing systems using a tree configuration
US11307969B2 (en) Methods for improved web application testing using remote headless browsers and devices thereof
US9456019B2 (en) Web page load time prediction and simulation
US9858301B1 (en) Selective flushing of a database journal for an asymmetrically-encrypted database
US20130191105A1 (en) Virtual systems testing
US20140012969A1 (en) Techniques for network replication
CN109032663A (zh) 接口文档的生成方法、装置、计算机设备及存储介质
US20200092168A1 (en) Production software application performance and resiliency testing
JP6763245B2 (ja) 情報処理装置及び情報処理プログラム
JP7024255B2 (ja) 情報処理装置及びプログラム
CN107222331A (zh) 分布式应用系统性能的监控方法、装置、存储介质及设备
JP6282217B2 (ja) 不正プログラム対策システムおよび不正プログラム対策方法
JPWO2020008991A1 (ja) 検証自動化装置、検証自動化方法、およびプログラム
US11321318B2 (en) Dynamic access paths
JP2006031178A (ja) 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム
US20170300403A1 (en) Recordation of user interface events for script generation
US20120017157A1 (en) Workstation Management Application
US20160011897A1 (en) Method and system for integrating and implementing virtual service packages across different service virtualization tools
CN115171633A (zh) 混音处理方法、计算机设备和计算机程序产品
JP5918102B2 (ja) 解析システム、解析装置、解析方法及び解析プログラム
CN109753389A (zh) 保证数据一致性的方法、装置、存储介质及服务器
US10606939B2 (en) Applying matching data transformation information based on a user's editing of data within a document
JP5718256B2 (ja) システム性能解析装置、システム性能解析方法、およびシステム性能解析プログラム
JP5006768B2 (ja) 音響モデル生成装置、方法、プログラム及びその記録媒体