한 팀에서 Node.js Lambda 함수에 더 많은 버그가 발생하는 것을 확인하고 있습니다. 이들은 Lambda 런타임을 면밀하게 에뮬레이트하고, 다른 개발자가 로컬에서 테스트를 실행할 수 있도록 하며, AWS CDK 배포 전에 CI/CD 파이프라인의 일부로 실행되는 자동화된 테스트를 원합니다. 어떤 솔루션이 이러한 요구 사항을 충족할까요?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: AWS SAM CLI를 설치합니다. sam local generate-event로 샘플 이벤트를 생성하고 sam local invoke를 사용하여 Lambda 함수를 로컬에서 실행하고 응답을 검증하는 자동화된 테스트 스크립트를 생성합니다. 스크립트를 문서화하고 CI/CD 파이프라인에 추가합니다..
이것이 정답인 이유
AWS SAM CLI는 sam local invoke 명령을 통해 Lambda 런타임을 로컬에서 에뮬레이트하여 실제 AWS 환경과 유사하게 함수를 테스트할 수 있습니다. sam local generate-event를 사용하여 다양한 서비스의 샘플 이벤트를 쉽게 생성할 수 있어 테스트 시나리오를 다양화할 수 있습니다. 이는 개발자가 로컬에서 테스트를 실행하고, CI/CD 파이프라인에 통합하여 자동화된 테스트를 수행하는 데 가장 적합한 솔루션입니다. 다른 옵션들은 Lambda 런타임 에뮬레이션이 부족하거나(단위 테스트 프레임워크), 설정이 복잡하여(Docker 컨테이너) 요구사항을 완전히 충족하지 못합니다. cdk local invoke는 AWS CDK의 일부이지만, SAM CLI만큼 Lambda 런타임 에뮬레이션에 특화되어 있지 않습니다.