0Pricing
Serverless AWS Lambda Development · Lekcja

Testowanie lokalne za pomocą SAM CLI

Dowiedz się, jak lokalnie wywoływać, emulować i debugować aplikację serverless za pomocą AWS SAM CLI przed wdrożeniem jej w chmurze.

Testowanie lokalne za pomocą SAM CLI to bezpłatna lekcja Serverless AWS Lambda Development na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Serverless AWS Lambda Development, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Serverless AWS Lambda Development zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

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.

Często zadawane pytania

Czy lekcja „Testowanie lokalne za pomocą SAM CLI” jest bezpłatna?

Tak — pełny tekst „Testowanie lokalne za pomocą SAM CLI” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Serverless AWS Lambda Development, przejdź na CoddyKit PRO. Kurs Serverless AWS Lambda Development zawiera 4 lekcji w sumie.

Co nauczysz się w „Testowanie lokalne za pomocą SAM CLI”?

Dowiedz się, jak lokalnie wywoływać, emulować i debugować aplikację serverless za pomocą AWS SAM CLI przed wdrożeniem jej w chmurze. Ćwiczysz Serverless AWS Lambda Development z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Serverless AWS Lambda Development?

Nie wymagamy żadnego doświadczenia. Serverless AWS Lambda Development w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Testowanie lokalne za pomocą SAM CLI”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Serverless AWS Lambda Development?

Tak. Każda lekcja Serverless AWS Lambda Development zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. AWS Serverless Application Model (SAM)
  2. Wprowadzenie do Serverless Framework
  3. CI/CD dla aplikacji serverless
  4. Testowanie lokalne za pomocą SAM CLI
← Powrót do Serverless AWS Lambda Development