Lokaal testen met SAM CLI
Leer uw serverless-applicatie lokaal aan te roepen, te emuleren en te debuggen met de AWS SAM CLI voordat u deze naar de cloud implementeert.
Lokaal testen met SAM CLI is een gratis Serverloze ontwikkeling met AWS Lambda-les op CoddyKit. Dit is les 4 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Serverloze ontwikkeling met AWS Lambda. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Serverloze ontwikkeling met AWS Lambda bevat in totaal 4 lessen.
Waarom lokaal testen?
Elke wijziging naar een testomgeving implementeren is traag. De SAM CLI bootst Lambda en API Gateway na op je computer, zodat je snel feedback krijgt.
Wat je nodig hebt
Lokale emulatie voert functies uit in Docker-containers die de Lambda-runtime nabootsen. Daarom heb je naast de SAM CLI ook Docker nodig.
Eén functie aanroepen
Gebruik sam local invoke om één functie één keer uit te voeren met een testgebeurtenis, net als bij één Lambda-uitvoering.
sam local invoke OrdersFunction \
--event events/order.jsonEen bestand met een testgebeurtenis
Het gebeurtenisbestand is de JSON-lading die je handler ontvangt. Bewaar een map met voorbeeldgebeurtenissen voor verschillende scenario's.
{
"body": "{\"item\":\"book\",\"qty\":2}",
"httpMethod": "POST"
}Voorbeeldgebeurtenissen genereren
SAM kan realistische gebeurtenissen voor veelgebruikte bronnen genereren, zodat je ze niet zelf hoeft samen te stellen.
sam local generate-event s3 put > events/s3.json
sam local generate-event apigateway aws-proxy > events/api.jsonEen lokale API uitvoeren
sam local start-api start een lokale HTTP-server die verzoeken naar je functies doorstuurt en API Gateway nabootst.
sam local start-api --port 3000De lokale API aanroepen
Als de API actief is, kun je deze met elke HTTP-client aanroepen. De respons komt van je echte handlercode.
curl -X POST http://localhost:3000/orders \
-d '{"item":"book","qty":2}'Omgevingsvariabelen lokaal
Geef een JSON-bestand met overschrijvingen voor omgevingsvariabelen door, zodat lokale uitvoeringen naar testbronnen wijzen in plaats van naar productie.
sam local invoke OrdersFunction \
--env-vars env.jsonStapsgewijs foutopsporen
Start met -d om te wachten totdat een foutopsporingsprogramma verbinding maakt via een poort. Daarna kun je onderbrekingspunten in je functiecode instellen.
sam local invoke OrdersFunction -d 5858Beperkingen van lokale emulatie
De lokale modus kan IAM, netwerken of koude starts niet perfect nabootsen. Gebruik deze modus als snelle eerste controle, niet als vervanging voor een test in een stagingomgeving in de cloud.
De sjabloon valideren
Voer vóór het implementeren sam validate uit om fouten in de sjabloon vroegtijdig te vinden.
sam validate --lintKorte controle
Controleer hoeveel je weet over lokaal testen.
Samenvatting
Je hebt geleerd hoe je functies aanroept, gebeurtenissen genereert, een lokale API uitvoert, omgevingsvariabelen injecteert en een foutopsporingsprogramma koppelt met de SAM CLI, inclusief de beperkingen van emulatie.
Leer Serverloze ontwikkeling met AWS Lambda met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Lokaal testen met SAM CLI” gratis?
Ja — de volledige tekst van “Lokaal testen met SAM CLI” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Serverloze ontwikkeling met AWS Lambda wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Serverloze ontwikkeling met AWS Lambda bevat in totaal 4 lessen.
Wat leer ik in “Lokaal testen met SAM CLI”?
Leer uw serverless-applicatie lokaal aan te roepen, te emuleren en te debuggen met de AWS SAM CLI voordat u deze naar de cloud implementeert. Je oefent met Serverloze ontwikkeling met AWS Lambda door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Serverloze ontwikkeling met AWS Lambda te beginnen?
Ervaring vooraf is niet nodig. Serverloze ontwikkeling met AWS Lambda op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.
Hoe lang duurt de les “Lokaal testen met SAM CLI”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Serverloze ontwikkeling met AWS Lambda?
Ja. Elke les over Serverloze ontwikkeling met AWS Lambda bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- AWS Serverless Application Model (SAM)
- Kennismaking met Serverless Framework
- CI/CD voor serverless apps
- Lokaal testen met SAM CLI