0Pricing
Serverless AWS Lambda Development · Урок

Локальное тестирование с SAM CLI

Научитесь локально вызывать, эмулировать и отлаживать бессерверное приложение с помощью AWS SAM CLI до его развёртывания в облаке.

«Локальное тестирование с SAM CLI» — бесплатный урок Serverless AWS Lambda Development на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Serverless AWS Lambda Development, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Serverless AWS Lambda Development содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Test Locally?

Deploying to test every change is slow. The SAM CLI emulates Lambda and API Gateway on your machine for a fast feedback loop.

What You Need

Local emulation runs functions inside Docker containers that mirror the Lambda runtime, so you need Docker installed alongside the SAM CLI.

Invoking a Single Function

Use sam local invoke to run one function once with a test event, just like a single Lambda execution.

sam local invoke OrdersFunction \
  --event events/order.json

A Test Event File

The event file is the JSON payload your handler receives. Keep a folder of sample events for different scenarios.

{
  "body": "{\"item\":\"book\",\"qty\":2}",
  "httpMethod": "POST"
}

Generating Sample Events

SAM can scaffold realistic events for common sources so you do not handcraft them.

sam local generate-event s3 put > events/s3.json
sam local generate-event apigateway aws-proxy > events/api.json

Running a Local API

sam local start-api stands up a local HTTP server that routes requests to your functions, mimicking API Gateway.

sam local start-api --port 3000

Calling the Local API

Once running, hit it with any HTTP client. The response comes from your real handler code.

curl -X POST http://localhost:3000/orders \
  -d '{"item":"book","qty":2}'

Environment Variables Locally

Pass a JSON file of environment variable overrides so local runs point at test resources instead of production.

sam local invoke OrdersFunction \
  --env-vars env.json

Step-Through Debugging

Start with -d to pause for a debugger to attach on a port, letting you set breakpoints in your function code.

sam local invoke OrdersFunction -d 5858

Limits of Local Emulation

Local mode cannot perfectly reproduce IAM, networking, or cold starts. Treat it as a fast first check, not a replacement for a cloud staging test.

Validate the Template

Before deploying, run sam validate to catch template errors early.

sam validate --lint

Quick Check

Test your local-testing knowledge.

Recap

You learned to invoke functions, generate events, run a local API, inject env vars, and attach a debugger with the SAM CLI, plus its emulation limits.

Часто задаваемые вопросы

Урок «Локальное тестирование с SAM CLI» бесплатный?

Да — полный текст урока «Локальное тестирование с SAM CLI» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Serverless AWS Lambda Development, подпишись на CoddyKit PRO. Курс Serverless AWS Lambda Development содержит 4 уроков всего.

Чему я научусь в уроке «Локальное тестирование с SAM CLI»?

Научитесь локально вызывать, эмулировать и отлаживать бессерверное приложение с помощью AWS SAM CLI до его развёртывания в облаке. Ты практикуешь Serverless AWS Lambda Development с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Serverless AWS Lambda Development?

Предыдущий опыт не требуется. Serverless AWS Lambda Development на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Локальное тестирование с SAM CLI»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Serverless AWS Lambda Development?

Да. Каждый урок Serverless AWS Lambda Development включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Модель бессерверных приложений AWS (SAM)
  2. Введение в Serverless Framework
  3. CI/CD для бессерверных приложений
  4. Локальное тестирование с SAM CLI
← Назад к Serverless AWS Lambda Development