Executable emulator lab · 6–9 min
S3 and Lambda event testing
Connect two services, predict the result, then break and repair an event. Follow a real upload into an explicit manual Lambda test.
This lab uses your own temporary emulator. It does not access a live AWS account.
Choose this lab in Missions1. Deploy and connect
Start with an S3 bucket and a Lambda function. Deploy the two blocks, then connect Object created to Function input. This configures a notification in your emulator. Configuration alone does not prove that an event was delivered.
2. Make a prediction and upload
Predict which field identifies the file: its object key. Choose a page design and title, then upload index.html into the connected bucket. S3 stores an object under that key; uploading another page to the same key replaces it.
3. Break the input, then repair it
Send the controlled broken event. The actual fixed Lambda handler rejects a missing Records[0].s3.object.key. Test the uploaded event next to restore the key. Inspect the returned bucket and key, and compare them with the source upload.
4. Explain the evidence
You manually invoked the function using an event constructed from a real object. The trace identifies the upload, input, and result. Automatic S3 event delivery is not observed by this lesson. A separate direct invocation uses no S3 connection.
Practice, then check your understanding
Repeat the lab with different input. Explain the result before claiming completion. Your live resources expire after inactivity, while graph intent and earned XP remain in your browser.
Read the official AWS documentation for service behavior and production details.