HTTP API設定には、基本的なリクエストの詳細、リクエストヘッダー、リクエスト本文、レスポンスパラメーター、およびチェックポイント(アサーション)が含まれます。これらの設定は、HTTPプロトコルを指定するテストリクエストシナリオ、レスポンスからコンテンツを抽出するためにレスポンスパラメーターを組み合わせる必要があるシナリオ、またはビジネスの観点からレスポンスが期待どおりであるかどうかをチェックするためにチェックポイントを組み合わせる必要があるシナリオで広く使用されています。
制限
HTTPバージョン
パフォーマンス テスト サービス(PTS)は、HTTP/1.1 および HTTP/2 プロトコルをサポートしています。実際にデバッグまたはストレステストを開始すると、PTSストレステストエンジンはサーバーとプロトコルバージョンを自動的にネゴシエートします。サーバーが HTTP/2 プロトコルをサポートしている場合、PTS はデフォルトで優先的に HTTP/2 プロトコルを使用してサーバーと対話します。そうでない場合、PTS は HTTP/1.1 プロトコルを使用してサーバーと対話します。したがって、シナリオを設定するときに、使用される HTTP プロトコルバージョンに注意を払う必要はありません。
HTTP リクエストヘッダー
HTTP/2 リクエストヘッダーを使用する場合、HTTP/2 RFC 標準で指定されているように、一部のリクエストヘッダーが異常になる可能性があります。ProtocolException:*** is illegal for HTTP/2 messages というメッセージが API のデバッグ後に表示された場合は、*** に対応するヘッダーをリクエストヘッダー設定から削除する必要があります。
次の HTTP/2 リクエストヘッダーは無効であり、大文字と小文字は区別されません。
Connection
Keep-Alive
Proxy-Connection
Transfer-Encoding
Host
Upgrade
リクエストタイムアウト期間
リクエストタイムアウトとは、実際のリクエスト送信プロセスにおける次のいずれかの期間のタイムアウトを指します。いずれかの期間がタイムアウトすると、リクエストがタイムアウトします。
リクエストを送信してから最初のレスポンスパケットを受信するまでの期間
連続する2つのレスポンスパケットの間隔
socketTimeOut パラメーターは、間隔のタイムアウト、つまりクライアントがサーバーと対話する時間を示します。間隔が対話時間を超えると、間隔がタイムアウトします。対話時間は、全体的な対話時間を示すものではないことに注意してください。たとえば、タイムアウト期間を 10 秒に指定した場合、これはクライアントとサーバー間の対話時間を示します。データが 8 秒ごとに(2 つの連続するパケット間の時間)送信され、10 回送信される場合、全体的な対話時間は 80 秒です。この場合、タイムアウトは発生しません。ただし、データが 12 秒ごとに送信される場合、これは 2 つの連続するパケット間の時間が 10 秒を超えていることを示しており、タイムアウトが発生します。
HTTP API の [基本リクエスト情報] セクションと [詳細設定] セクションでリクエストタイムアウト期間を設定した場合、HTTP API のリクエストタイムアウト設定は [詳細設定] セクションのリクエストタイムアウト設定を上書きします。
[基本リクエスト情報] セクションでのリクエストタイムアウト期間の設定方法については、基本リクエスト情報 をご参照ください。
基本リクエスト情報
HTTP API 設定ページに表示される基本リクエスト情報には、通常、API 名、ストレステスト URL、およびリクエストメソッドが含まれます。詳細については、基本リクエスト情報 をご参照ください。
カスタムリクエスト情報の指定
ストレステストの特別なリクエストを指定するには、ヘッダーを定義します。
ストレステストの特別なリクエストをさらに指定する場合、または指定されたヘッダーがストレステストの要件を満たしていない場合は、本文を定義できます。
実際のストレステストシナリオでは、レスポンスからコンテンツを抽出し、ビジネスの観点からリクエストが成功したかどうかを確認するために、レスポンスパラメーターがよく使用されます。
実際のストレステストシナリオでは、ビジネスの観点からリクエストが成功したかどうかを確認するために、チェックポイントがよく使用されます。
詳細設定
ドメイン名に対応する IP アドレスを指定できます。ストレステスト中、ストレステストトラフィックはバインドされた IP アドレスに直接アクセスして、ターゲットサービスのストレステストを実行します。
PTS でのストレステスト中、[詳細設定] セクションの [HTTPS 設定] サブセクションで、SSL ステータスループリセットをオンにし、SSL プロトコルを選択できます。