コンソールでの Lambda 関数のテスト - AWS Lambda

コンソールでの Lambda 関数のテスト

コンソールで Lambda 関数をテストするには、テストイベントを使用して関数を呼び出します。テストイベントとは、関数への JSON 入力です。関数が入力を必要としない場合、イベントは空のドキュメント ({}) にすることができます。

プライベートテストイベント

プライベートテストイベントは、イベント作成者のみが使用でき、追加のアクセス許可は必要ありません。関数ごとに、最大 10 個のプライベートテストイベントを作成し保存できます。

プライベートテストイベントを作成するには

  1. Lambda コンソールの [Functions] (関数) ページを開きます。

  2. テストする関数の名前を選択します。

  3. [Test] (テスト) タブを選択します。

  4. [Test event] (テストイベント) で、次の作業を行います。

    1. [Template] (テンプレート) を選択します。

    2. テストの [Name] (名前) を入力します。

    3. テキスト入力ボックスに、JSON テストイベントを入力します。

    4. [Event sharing settings] (イベント共有設定) で、[Private] (プライベート) を選択します。

  5. [Save changes] (変更の保存) をクリックします。

また、[Code] (コード) タブで新しいテストイベントを作成することもできます。そこから、[Test] (テスト)、[Configure test event] (テストイベントの設定) を選択します。

共有可能なテストイベント

共有可能なテストイベントとは、同じ AWS アカウントの他の AWS Identity and Access Management (IAM) ユーザーと共有できるテストイベントです。他のユーザーの共有可能なテストイベントを編集し、それを使用して関数を呼び出すことができます。

Lambda は、共有可能なテストイベントをスキーマとして lambda-testevent-schemas という名前の Amazon EventBridge (CloudWatch Events) スキーマレジストリに保存します。Lambda はこのレジストリを使用して、作成した共有可能なテストイベントを保存したり呼び出したりするので、このレジストリの編集や lambda-testevent-schemas 名を使用したレジストリの作成はしないようにお勧めします。

共有可能なテストイベントを表示、共有、編集するには、次の EventBridge (CloudWatch Events) スキーマレジストリ API オペレーションのすべてについてアクセス許可が付与されている必要があります。

共有可能なテストイベントに加えた編集を保存すると、そのイベントが上書きされることに注意してください。

共有可能なテストイベントを作成、編集、または表示できない場合は、アカウントにこれらのオペレーションに必要なアクセス許可があることを確認してください。必要なアクセス許可を持っていても、共有可能なテストイベントにアクセスできない場合は、EventBridge (CloudWatch Events) レジストリへのアクセスを制限している可能性があるリソースベースのポリシーがないか確認します。

共有可能なテストイベントを作成するには

  1. Lambda コンソールの [Functions] (関数) ページを開きます。

  2. テストする関数の名前を選択します。

  3. [Test] (テスト) タブを選択します。

  4. [Test event] (テストイベント) で、次の作業を行います。

    1. [Template] (テンプレート) を選択します。

    2. テストの [Name] (名前) を入力します。

    3. テキスト入力ボックスに、JSON テストイベントを入力します。

    4. [Event sharing settings] (イベント共有設定) で、[Shareable] (共有可能) を選択します。

  5. [Save changes] (変更の保存) をクリックします。

テストイベントで関数を呼び出す

コンソールでテストイベントを実行すると、Lambda はテストイベントと同期して関数を呼び出します。関数ランタイムは JSON ドキュメントをオブジェクトに変換し、コードのハンドラーメソッドに渡して処理します。

関数をテストするには

  1. Lambda コンソールの [Functions] (関数) ページを開きます。

  2. テストする関数の名前を選択します。

  3. [Test] (テスト) タブを選択します。

  4. [Test event] (テストイベント) で、[Saved event] (保存したイベント) を選択し、使用する保存したイベントを選択します。

  5. [Test] (テスト) を選択します。

  6. テスト結果を確認するには、[Execution result] (実行結果) で、[Details] (詳細) を展開します。

テストイベントを保存せずに関数を呼び出すには、保存する前に [Test] (テスト) を選択します。これにより、Lambda がセッション期間中だけ保持し、保存されないテストイベントが作成されます。

また、[Code] (コード) タブで保存されたテストイベントおよび保存されないテストイベントにアクセスすることもできます。そこから、[Test] (テスト) を選択し、テストイベントを選択します。

共有可能なテストイベントスキーマの削除

共有可能なテストイベントを削除すると、Lambda はそれらを lambda-testevent-schemas レジストリから削除します。レジストリから最後の共有可能なテストイベントを削除すると、Lambda はレジストリを削除します。

関数を削除しても、Lambda は関連付けられた共有可能なテストイベントスキーマを削除しません。これらのリソースは、EventBridge (CloudWatch Events) コンソール から手動でクリーンアップする必要があります。