AWS Summit2017|Lambda のテスト自動化

AWS Summit2017|Lambda のテスト自動化

この日は AWS を利用したサーバレスアプリケーションの特集です
AWS は サーバレスでも利用できます
サーバレスアプリケーションの特徴は EC2 や RDS などのサーバインスタンスを必要としないでデプロイできることです
AWS が受付るので スケールについての心配がない、サーバの保守もいらないなど利点があります
コストについては従量課金ですので どんな場合でも大幅に安くなるっていうのはウソになります

—————————————————

Day4 Dev Day Track1 – D4T7-3

Lambda のテスト自動化

Lambda はサーバレスで実行されるプログラムだが、テストの手法についてまだベストプラクティスがない

Lambda関数 のテストは本番環境または開発環境にデプロイして入力によってテストを行うような手法があるが、これではレスポンスを得るまでに5分程度の時間がかかり、実用できる時間ではない

そこで、AWS Local Stack を用いてデプロイをなくし、S3などのAWSリソースはローカルにアクセスすることでテスト実行時間を秒単位に落とせる

また、カバレジを使用して全てのテストの実施範囲を確認し、異常系テストなど普段は通らないコードをテストする

このテスト手法ができれば少ない時間でテストをループすることが可能となるため開発に適した手法となる

最近の傾向として、本番監視をテストと捉えるようになっている
本番でしか発生しない障害などは本番を監視して改善していくように考える

Lambda でなんでもできる様な気がしてきたけど、Microservice の思想を崩さないようにしないといけない

キーワード
テスト自動化、 Local Stack、 カバレジテスト