パラメータ化の概要
ビジネス・プロセスを記録すると,記録中に実際に使用された値を含むスクリプトが VuGen によって生成されます。記録されたこれらの値とは異なる値を使って,スクリプトのアクション(クエリや送信など)を実行する必要があるとします。異なる値を使用するためには,記録された値をパラメータで置き換えます。これを,スクリプトの「パラメータ化」と呼びます。
仮想ユーザを実行したときに,指定したデータ・ソースにある値でパラメータが置き換えられます。データ・ソースとして,ファイルまたは内部的に生成された変数を使用できます。詳細については,「パラメータ・タイプ」 を参照してください。
このトピックの内容:
区切り文字
パラメータは,仮想ユーザ・スクリプトのパラメータ区切り記号内に現れます。VuGen では,標準設定で「{」が左のパラメータ区切り記号,「}」が右のパラメータ区切り記号として使用されますが,これらの区切り記号は必要に応じて変更できます。さらに,スクリプトの背景色やパラメータのアウトラインの色を変更することもできます。詳細については,「[スクリプティング]オプション・タブ」 を参照してください。
記録されたスクリプト・セクション。
"value=UNIX"
「UNIX」が「Operating System」パラメータで置き換えられた後のスクリプト・セクション。
"value={Operating System}"
入力/出力パラメータ
パラメータの対象にできるのは,関数内の引数だけです。関数の引数以外の文字列はパラメータ化できません。また,すべての関数の引数をパラメータ化できるわけでもありません。パラメータ化できる引数については,関数リファレンス(該当するバージョンを選択)で各関数を参照してください。
入力パラメータとは,スクリプトを実行する前に設計段階で値を定義するパラメータのことです。出力パラメータは設計段階に定義しますが,テストの実行中に値を取得します。出力パラメータは,多くの場合 Web サービス呼び出しとともに使用されます。設計段階でスクリプトのパラメータを選択するときは注意して,空の出力パラメータではないことを確認します。
例:
Web アプリケーションの操作中に記録された仮想ユーザ・スクリプトで,VuGen によって,図書館のデータベースからタイトルにUNIXという文字列を含む項目を検索する次のステートメントが生成されたとします。
web_submit_form("db2net.exe", ITEMDATA, "name=library.TITLE", "value=UNIX", ENDITEM, "name=library.AUTHOR", "value=", ENDITEM, "name=library.SUBJECT", "value=", ENDITEM, LAST);
複数の仮想ユーザと繰り返しを使用してスクリプトを再生するときは,UNIX という同じ値は使用したくありません。代わりに,定数の値をパラメータに置き換えます。
web_submit_form("db2net.exe", ITEMDATA, "name=library.TITLE", "value={Book_Title}", ENDITEM, "name=library.AUTHOR", "value=", ENDITEM, "name=library.SUBJECT", "value=", ENDITEM, LAST);
タスクの詳細については,「 パラメータの作成」を参照してください。
相関
記録された仮想ユーザ・スクリプトを正しく再生できるようにするには,相関の実装が必要になる場合もあります。相関は,記録されたスクリプトに動的な値(セッション ID など)が含まれているため,正常に再生できない場合に使用されます。これを解決するには,動的な値を変数に変換します。これにより,スクリプトで再生を正常に行うことができます。詳細については,「相関の概要」 を参照してください。
VTS とパラメータ化
VTS(Virtual Table Server)は,仮想ユーザ・スクリプトと連携する Web ベースのアプリケーションです。VTS は,標準の VuGen パラメータ化に対する代替手段を提供します。
標準のパラメータ化を使用すると,各仮想ユーザに専用の値セットからのパラメータ値が割り当てられます。パラメータ値は仮想ユーザ間で共有されません。それに対して,VTS では,単一のパラメータ値のセットから複数の仮想ユーザにパラメータ値を割り当てることができます。そのため,現実のユーザ環境をより正確にエミュレートできる場合があります。
詳細については,「VTS の概要」を参照してください。
TruClient 仮想ユーザ・スクリプトで VTS 機能を使用する方法の詳細については,「TruClient スクリプトでの VTS の使用」を参照してください。