すべてのプロダクト
Search
ドキュメントセンター

Performance Testing:シナリオへのスクリプトのインポート

最終更新日:Jan 08, 2025

Performance Testing Service (PTS) では、Postman (JSON)、HTTP Archive (.har)、YAML (.yml)、および Swagger (.json) スクリプトをシナリオにインポートし、それらをパフォーマンス テスト用の PTS ネイティブ形式に変換できます。 PTS は、1 秒あたりのリクエスト数 (RPS) パフォーマンス テストモードを提供し、テスト パラメーターのリアルタイム調整を可能にし、個々の API のパフォーマンス メトリックを追跡できます。

スクリプト

HTTP または HTTPS アプリケーションのパフォーマンス テストを実施するために、PTS は Postman (JSON)、HTTP Archive (.har)、YAML (.yml)、および Swagger (.json) を含むさまざまな形式のスクリプトから重要なリクエスト情報を抽出し、パフォーマンス テスト シナリオに適した API フィールドに変換できます。

Postman スクリプト フィールドと PTS API フィールド間のマッピング

Postman スクリプト フィールド

PTS API フィールド

info.name

セッションの名前。

item[]

API。

item[0].name

API の名前。

item[0].request.method

リクエストメソッド。

item[0].request.url.raw

リクエストされた URL。

item[0].request.header

key

ヘッダーのキー。

value

ヘッダーの値。

item[0].request.body

POST リクエストの場合、リクエストの Content-Type ヘッダーは、受信側で本文データがどのように解釈または表示されるかを指定します。

説明
  • Postman (JSON) スクリプトでは、複数の info.name オブジェクトが同じレベルに存在できますが、item オブジェクトは info.name オブジェクトと同じレベルに存在できません。

  • Postman (JSON) スクリプトからコレクションをエクスポートするには、バージョン 2.1 を使用します。

  • Postman (JSON) スクリプトでは、GET、POST、PUT、および DELETE HTTP メソッドのみを指定できます。

  • Postman (JSON) スクリプトでは、ファイルモードを指定できません。

  • Postman (JSON) スクリプトでは、ファイルのアップロードまたはバイナリの Content-Type ヘッダーを指定できません。

YAML スクリプト フィールドと PTS API フィールド間のマッピング

表 1. 基本項目

YAML スクリプト フィールド

PTS API フィールド

Relations

セッション。

Relation

セッション。

Disabled

セッションが無効になっているかどうかを指定します。

ID

セッションの ID。

Name

セッションの名前。

Nodes

ノード。

Name

ノードの名前。

NodeId

ノードの ID。

NodeType

ノードのタイプ。

Config

ノード設定。

表 2. ノード タイプ

YAML スクリプト フィールド

PTS API フィールド

chain

API ノード

wait

思考時間ノード。

condition

条件付きジャンプ ノード。

dam

ランデブー ポイント。

dataInit

データ構成ノード。

dataStore

データ エクスポート ノード。

dataDefine

データ コマンド ノード。

delay

遅延ノード。

repeatBegin

ループ コマンド開始ノード。

repeatEnd

ループ コマンド終了ノード。

ifBegin

条件ベースのコマンド開始ノード。

ifEnd

条件ベースのコマンド終了ノード。

表 3. ノード設定

カテゴリ

YAML スクリプト フィールド

PTS API フィールド

chain

accessId

プロトコルの ID。

beginStep

仮想ユーザー モードでのセッションの仮想ユーザーの初期数と、RPS モードでの API の 1 秒あたりの初期リクエスト数 (RPS) を指定します。

checkPoints

チェックポイント。

  • チェックポイント。

    • expectValue: 期待値。

    • operator: 演算子。

      • gt: より大きい

      • gte: 以上

      • lt: 未満

      • lte: 以下

      • eq: 等しい

      • n_eq: 等しくない

      • ctn: 含む

      • n_ctn: 含まない

      • exist: 存在する

      • n_exist: 存在しない

      • belong: 属する

      • n_belong: 属さない

      • regex_match: 正規表現一致

  • point: チェック対象の項目。

  • type: チェックポイント タイプ。有効な値:

    • BODY_TEXT: プレーンテキスト形式のレスポンス本文。

    • BODY_JSON: JSON 形式のレスポンス本文。

    • HEADER: HTTP ヘッダー。

    • COOKIE: Cookie。

    • STATUS_CODE: HTTP レスポンス ステータス コード。

    • EXPORTED_PARAM: レスポンスからエクスポートされたパラメーター。

endStep

仮想ユーザー モードでのセッションの仮想ユーザーの最大数と、RPS モードでの API の最大 RPS を指定します。

headers

HTTP ヘッダー設定。

  • name: ヘッダーのキー。

  • value: ヘッダーの値。

method

リクエスト メソッド。有効な値: GET、POST、PUT、および DELETE。

postActions

テスト後のアクション:

  • type: アクションのタイプ。 export のみがサポートされています。

  • params: 出力パラメーター設定。

    • name: パラメーターの名前。

    • value: 出力パラメーター式。

    • type: チェックポイント タイプと同じ。

body

リクエスト本文。このフィールドは、POST または PUT メソッドでのみ使用できます。

  • contentType: タイプ。

  • value: 本文の内容。

preActions

事前テスト アクション:

protocol

プロトコル タイプ。デフォルト: http。

redirectCountLimit

リクエストをリダイレクトするかどうかを指定します。値 0 は、リクエストがリダイレクトされないことを示します。値 10 は、リクエストがリダイレクトされることを示します。

timeoutInMilliSeconds

タイムアウト期間。単位: ミリ秒。

condition

defaultAction

デフォルト アクション。有効な値:

  • action: アクション。

    • jump: 別のパスにジャンプします。

    • continue: 現在のパスに沿って続行します。

    • return: プロセスを終了します。

  • target: API の ID。

  • conditions: 条件。

    • param: パラメーターの名前。

    • operator: 演算子。

    • value: 比較値。

actions

追加された条件。

dam

type

ランデブー ポイント タイプ。

  • BY_TIME。

  • BY_USER。

target

負荷レベル。

datalnit

definitions

キーと値のペア構造。カスタム パラメーターに対応します。

references

参照されるファイル パラメーター。

  • column: 列の名前。

  • fileKey: ファイルのインデックス。

  • FileName: ファイルの名前。

  • useOnce: ファイル パラメーターを 1 回だけ使用するかどうかを指定します。

  • asBase: 列を基準列として使用するかどうかを指定します。

  • accessMethod: アクセス メソッド。

    • inOrder。

    • inRandom。

  • index: 列のインデックス。

dataDefine

definitions

キーと値のペア構造。

dataStore

dataSize

データ エクスポート レベル。

dataConfig

データ エクスポート設定。

  • type: タイプ。

    • COOKIE: Cookie タイプ。

    • FILE: ファイル パラメーター タイプ。

    • PARAM: 出力パラメーター タイプ。

    • INSTRUCTION: データ コマンド タイプ。

  • params: パラメーター。

delay

duration

遅延時間。単位: ミリ秒。

ifBegin

ifEndNodeId

条件ベースのコマンドの終了ノードの ID。

operator

演算子。

param

式。

value

比較値。

ifEnd

ifBeginNodeId

条件ベースのコマンドの開始ノードの ID。

repeatBegin

repeatEndNodeId

ループ コマンドの終了ノードの ID。

repeatEnd

repeatBeginNodeId

ループ コマンドの開始ノードの ID。

repeatCount

繰り返し回数。

wait

type

  • FIXED: 遅延の定数値。

  • NORMAL: 遅延の一様分布。

  • UNIFORM: 遅延の正規分布。

base

type が FIXED に設定されている場合は定数遅延値、type が NORMAL に設定されている場合は基準遅延、type が UNIFORM に設定されている場合は平均遅延を指定します。

scope

type が FIXED に設定されている場合は無関係、type が NORMAL に設定されている場合は基準値を中心とした変動範囲、type が UNIFORM に設定されている場合は分散。

Swagger スクリプト フィールドと PTS API フィールド間のマッピング

Swagger スクリプト フィールド

PTS API フィールド

paths.key

リクエストされた URL。

paths.key.key

リクエスト メソッド。

paths.key.key.parameters

リクエスト パラメーターまたはリクエスト本文。

definitions

リクエスト本文で使用されるスキーマ。

tags[0].name

セッションの名前。

手順

[シナリオの作成] ページで、スクリプト タイプを選択し、スクリプトをアップロードして、[OK] をクリックします。

スクリプトがインポートされると、[PTS シナリオの作成] ページで、スクリプトの内容が対応する API パフォーマンス テスト情報に変換されていることがわかります。

説明
  • 有効なスクリプト タイプは、Postman (JSON)、HTTP Archive (.har)、YAML (.yml)、および Swagger (.json) です。パフォーマンス テスト シナリオには 1 つのスクリプトのみをインポートできます。シナリオ構成を保存する前に、別のスクリプトをアップロードしてインポートされたスクリプトを上書きできます。

  • PTS にインポートできるスクリプトとスクリプト フィールドの説明については、スクリプト を参照してください。PTS でサポートされていないタイプまたはプロトコルを含むスクリプトはインポートしないでください。準拠していないスクリプトをアップロードすると、PTS コンソールにエラー ダイアログ ボックスが表示されます。