

# デプロイ前に CloudFront Connection Functions をテストする
<a name="test-connection-functions"></a>

TestConnectionFunction API オペレーションを使用して、開発ステージで CloudFront Connection Functions をテストできます。テストでは、ライブステージに発行する前に、サンプル接続イベントで関数ロジックを検証できます。

**Topics**
+ [テストのプロセス](#connection-function-testing-process)
+ [テスト結果](#connection-function-test-results)
+ [接続テストオブジェクト](#connection-test-object)

## テストのプロセス
<a name="connection-function-testing-process"></a>

Connection Function をテストするには

1. 開発ステージで Connection Function を作成します

1. TLS 接続イベントを表すテスト接続オブジェクトを準備します

1. TestConnectionFunction API オペレーションを使用して、テストデータで関数を実行します

1. 関数出力、実行ログ、エラーメッセージなどのテスト結果を確認します

1. 必要に応じて関数コードを更新し、テストプロセスを繰り返します

## テスト結果
<a name="connection-function-test-results"></a>

Connection Function をテストすると、次のような結果になります。
+ **関数の概要** - テストされた関数に関するメタデータ
+ **コンピューティング使用率** - リソース使用状況を示すパフォーマンスメトリクス
+ **実行ログ** - ログ記録ステートメントを含む、関数からのコンソール出力
+ **関数の出力** - 関数によって返される結果
+ **エラーメッセージ** - 実行中に発生したランタイムエラーまたは例外

## 接続テストオブジェクト
<a name="connection-test-object"></a>

接続テストオブジェクトは、関数が処理する TLS 接続イベントを表すバイナリ BLOB (最大 40KB) です。このオブジェクトには、関数が認証の決定を行うために使用する証明書と接続情報が含まれています。

**注記**  
接続テストオブジェクトの特定の構造と形式は、CloudFront Connection Functions ランタイムによって定義されます。ユースケースに適切なテストオブジェクトの作成に関する詳細については、CloudFront Functions のドキュメントを参照するか、AWS サポート にお問い合わせください。

Connection Function を作成したら、次のことができます。
+ **関数のテスト** - コンソールまたは CLI のテスト機能を使用して、サンプル接続イベントで関数を検証できます。詳細については、「Connection Function のテスト」を参照してください。
+ **関数の更新** - 必要に応じて関数コードと設定を変更できます。開発ステージの接続関数はいつでも更新できます。
+ **関数の公開** - 本番環境の準備ができたら、関数を発行して、開発ステージからライブステージに移行できます。詳細については、「Connection Function の関連付け」を参照してください。
+ **ディストリビューションとの関連付け** - 発行された関数を mTLS が有効なディストリビューションに関連付けて、ライブ接続を処理できます。詳細については、「接続関数の関連付け」を参照してください。