Локальное тестирование и отладка с помощью SAM CLI
Запускайте и отлаживайте бессерверные функции на собственном компьютере до развёртывания. Используйте sam local для вызова функций, эмуляции API Gateway и быстрой итерации.
«Локальное тестирование и отладка с помощью SAM CLI» — бесплатный урок Serverless Backend with AWS Lambda & API Gateway на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Serverless Backend with AWS Lambda & API Gateway, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Serverless Backend with AWS Lambda & API Gateway содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Why Test Locally?
Deploying to AWS just to test a change is slow. The SAM CLI emulates Lambda and API Gateway locally using Docker, so you can iterate in seconds.
Prerequisites
Local invocation needs:
- Docker running
- The SAM CLI installed
- A valid
template.yaml
Invoking a Single Function
Run one function with a test event payload.
sam local invoke HelloFunction --event events/event.jsonGenerating Sample Events
SAM can generate realistic event payloads for many AWS sources, saving you from writing them by hand.
sam local generate-event apigateway aws-proxy > events/event.jsonEmulating the API
Start a local HTTP server that mimics API Gateway, routing requests to your functions.
sam local start-api
# then: curl http://localhost:3000/helloEnvironment Variables Locally
Supply env vars via a JSON file so local runs match what the function expects.
sam local invoke HelloFunction \
--env-vars env.jsonHot Reload During Development
SAM watches your source: when you save a change, the next request uses the new code without restarting the local API, keeping the feedback loop tight.
Step Debugging
Attach a debugger by passing a debug port. Your IDE connects to it so you can set breakpoints inside the running container.
sam local invoke HelloFunction -d 5858Validating the Template
Catch template errors before deploying with a quick validation command.
sam validate --lintViewing Logs
After a deploy you can tail CloudWatch logs from the terminal, filtering by function.
sam logs -n HelloFunction --tailLimitations of Local Emulation
Local mode is great for logic, but it cannot perfectly mirror IAM permissions, real network latency, or managed services like DynamoDB. Always run an integration test in a real AWS stage before production.
Quick Check
Test your SAM CLI knowledge.
Recap
You learned local development with SAM:
sam local invokeruns a single functionsam local start-apiemulates API Gateway- Generate events, supply env vars, and attach a debugger
sam validatecatches template errors early- Local mode has limits — verify in a real stage before prod
Часто задаваемые вопросы
Урок «Локальное тестирование и отладка с помощью SAM CLI» бесплатный?
Да — полный текст урока «Локальное тестирование и отладка с помощью SAM CLI» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Serverless Backend with AWS Lambda & API Gateway, подпишись на CoddyKit PRO. Курс Serverless Backend with AWS Lambda & API Gateway содержит 4 уроков всего.
Чему я научусь в уроке «Локальное тестирование и отладка с помощью SAM CLI»?
Запускайте и отлаживайте бессерверные функции на собственном компьютере до развёртывания. Используйте sam local для вызова функций, эмуляции API Gateway и быстрой итерации. Ты практикуешь Serverless Backend with AWS Lambda & API Gateway с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Serverless Backend with AWS Lambda & API Gateway?
Предыдущий опыт не требуется. Serverless Backend with AWS Lambda & API Gateway на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Локальное тестирование и отладка с помощью SAM CLI»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Serverless Backend with AWS Lambda & API Gateway?
Да. Каждый урок Serverless Backend with AWS Lambda & API Gateway включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в AWS SAM
- Определение бессерверных ресурсов
- Развёртывание приложений SAM
- Локальное тестирование и отладка с помощью SAM CLI