値のパラメーター化
このトピックでは、DevWebスクリプトをパラメーター化して拡張する方法について説明します。
このトピックの内容:
パラメーター化の概要
DevWebスクリプトを作成してビジネスプロセスをエミュレートするときは、特定の値を含むスクリプトを作成します。スクリプトのアクション (queryやsubmitなど) を、記録されたものとは異なる値を使用して実行したいとします。異なる値を使用するためには、値をパラメーターで置き換えます。これを、スクリプトの「パラメーター化」と呼びます。
テストの実行中に、DevWebは、パラメーターリソースファイル (parameters.yml) で指定したメソッドで、指定したデータファイルの値でパラメーターを置き換えます。
ヒント: 次のビデオを確認します: チュートリアル#6: パラメーターの使用
パラメーターデータファイル
パラメーターデータファイルは、仮想ユーザーがスクリプトの実行中にアクセスできる値を保持します。
パラメーターデータファイルは、CSV (カンマ区切り値) ファイルです。1つのファイルに多数のパラメーターに対する値を格納できます。1つのカラムに1つのパラメーターに対する値が保存されます。列の最初の行はパラメーター名を表し、後続の各行は追加の値を表します。
次の例では、データファイルに「id」パラメーターと「first_name」パラメーターが含まれています。
id,first_name
120,John
121,Bill
122,Tom
パラメーターリソースファイル (parameters.yml)
parameters.ymlファイルには、スクリプトでパラメーターを使用する方法が記述されています。このファイルはscriptフォルダーに保存されます。
以下のサンプルに示すように、各パラメーターには独自のプロパティが必要です。
parameter.yml引数
次の表で、parameters.ymlプロパティについて説明します。
プロパティ | 説明 |
---|---|
name |
後でコードで使用できるパラメーターの名前。 |
type |
パラメーターのデータソースのタイプ。 サポートされているタイプ: CSV、各列が1つのパラメーターを表すコンマ区切りの値のテーブル。CSVには、列の名前を定義するヘッダー行が含まれている必要があります。 |
fileName |
パラメーターデータを含むスクリプトフォルダー内のCSVファイルの名前。 |
columnName | 列が表すパラメーターの値を取得する (CSVファイル内の) 列の名前。これは、CSVファイルの最初の行で定義されます。 |
nextValue |
次の値をいつ収集するかを知るために使用されるロジック。次のように決定されます。
注: nextRowがsame as <parameter name>に設定されている場合、nextValueは無視されます。 |
nextRow |
次の値を選択する方法を知るために使用されるロジック。次のように決定されます。
|
blockSize |
nextRowがuniqueに設定されている場合にのみ使用されます。
|
onEnd |
すべての値が使用されたが、スクリプトがさらに値を必要とする場合に何が起こるかを決定します。サポートされているオプションはloopです。これは、 最初の値が次の値として使用されることを意味します。 このプロパティを未定義のままにすると、すべての値が使用されたときにエラーが報告されます。 注: nextRowがsame as <parameter name>に設定されている場合、onEndは無視されます。 |
firstDataRow |
カラムから値を選択するための開始行を定義します。 選択がループまたはランダムであっても、開始行の前の行の値がパラメーターに使用されることはありません。たとえば、firstDataRow: 4の場合、1行目から3行目までの値は決して使用されません。 注: firstDataRow番号は、実際のデータの最初の行を参照します。列名を含む行は無視されます。 |
実行環境設定からのユーザー引数
parameters.ymlファイルは、%%で囲まれたユーザー引数キーを指定することにより、実行環境設定 (rts.yml) で定義された引数を使用できます。
例
parameters.yml内:
parameters: - name: myParam4 type: csv fileName: "%%myfile%%" …
参照された引数がrts.ymlに追加されました:
userArguments: myfile: "./data.csv"
rts.ymlファイルへのユーザー引数の追加の詳細については、属性の追加を参照してください。
スクリプトでパラメーターを使用する
テスト実行中にパラメーター値を使用するには、定数値をパラメーターに置き換えます。
パラメーターは、load.params
変数を介してスクリプトに公開されます。データファイルの場所など、パラメーターに必要なすべての情報は、上記のparameters.ymlファイルに示されています。
標準のJavaScript構文を使用して、パラメーターを文字列に追加できます。例:
var paramValue = load.params.myParam; var nextParamValue = load.params.myParam; //if nextValue is "always" this will be a new value var someString = `The value of myParam is ${load.params.myParam}`;
詳細については、JavaScript SDKドキュメントのパラメーターを参照してください。
関連項目: