lambda での実行テストを行うには?
lambda を実行すると、手元でハンドラ (の関数) を直接実行した場合とは、若干違う挙動をするために、その微妙な挙動にはまって時間を浪費する、ということがしばしばあります。
python を lambda で動かそうとしているのですが、例えば以下の挙動に遭遇しています。
- pip パッケージがデプロイ先に含まれていないので、 package が import できずにエラー
- file permission が 600 であった場合に、 lambda ではこのパーミッションでは読み込めずに import できずにエラー
- logging モジュールの挙動が手元と違う(原因調査中)
など。
lambda に実際デプロイして、その先で実行を行い、ログを cloud watch などから探し出すのは、手間です。
ローカルから、 lambda の実行環境を(できるかぎり)再現してテストする方法などはありますか?