Improve Lambda Test Tool v2 getting-started docs and add samples#2494
Open
GarrettBeatty wants to merge 2 commits into
Open
Improve Lambda Test Tool v2 getting-started docs and add samples#2494GarrettBeatty wants to merge 2 commits into
GarrettBeatty wants to merge 2 commits into
Conversation
Rewrite the LambdaTestTool-v2 README to be usage-first and fix several copy-paste-breaking inaccuracies: - Add a top-of-page Quick Start (install -> run -> invoke -> result) and a Prerequisites section (.NET 8+, PATH for global tools, verify step). - Fix the API Gateway route Endpoint example to use the base URL (http://localhost:5050) instead of appending the function name. - Make emulator-mode examples consistently HttpV2 to match the sample handler (avoids HTTP 502) and normalize Get/HttpV2 casing. - Correct and complete the command-line options table; document the info command, SQS and DynamoDB Streams event sources, the web UI workflow, built-in sample events, saved requests, and theming. - Add Troubleshooting and Known Limitations sections; remove the duplicate H1 and stale version note; reframe the Aspire pointer. Add runnable sample projects under samples/ (AddFunctionTopLevel, AddFunctionClassLibrary, SQSProcessor, ToUpperFunction), each with its own README and committed launch profile. Add a .gitignore exception so the samples' launchSettings.json files are tracked.
Verified end-to-end that a class-library Lambda function can run from the command line (not just an IDE). The Executable launch profile relies on the IDE expanding $(Configuration) and resolving workingDirectory, which plain 'dotnet run --launch-profile' does not do. - Add CopyLocalLockFileAssemblies to the AddFunctionClassLibrary sample so its NuGet dependencies are copied to the build output, making the function self-contained for a command-line 'dotnet exec' launch. - Restructure README Option 2 to lead with the command-line 'dotnet exec' steps and keep the IDE launch profile as a secondary option, noting the dotnet-run-vs-IDE caveat. - Rewrite the sample README with both command-line and IDE launch paths.
GarrettBeatty
commented
Jul 23, 2026
| # AWS Lambda Test Tool | ||
|
|
||
| ## Overview | ||
| The AWS Lambda Test Tool provides local testing capabilities for .NET Lambda functions with support for both Lambda emulation and API Gateway emulation. This tool allows developers to test their Lambda functions locally in three different modes: |
Contributor
Author
There was a problem hiding this comment.
i had go through here and correct a bunch of things. i then asked it to go through the readme and follow the steps and see if it could run the test tool etc following the steps in the readme and it could
GarrettBeatty
marked this pull request as ready for review
July 23, 2026 01:32
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Improves the getting-started experience for the Lambda Test Tool v2. Based on a full review of the README against the actual source, this fixes copy-paste-breaking inaccuracies, documents features that shipped but were undocumented, restructures the doc to be usage-first, and adds runnable sample projects. Every sample and documented flow was verified end-to-end against the installed tool (v0.15.0).
README changes
HttpV2.~/.dotnet/toolson PATH, verify step).Endpointnow uses the base URL (http://localhost:5050) instead of wrongly appending the function name.HttpV2to match the sample handler (previouslyRest, which yields HTTP 502); casing normalized (HttpV2,Get).infocommand, SQS and DynamoDB Streams event sources, the web UI invoke workflow, the 58 built-in sample events, saved requests, and theming.dotnet execpath and keeps the IDE launch profile as a secondary option, with thedotnet runvs IDE caveat called out.Sample projects (new, under
Tools/LambdaTestTool-v2/samples/)AddFunctionTopLevelAddFunctionClassLibrarySQSProcessorSQSEventhandler (SQS event source or built-insqs.json)ToUpperFunctionEach has its own README and a committed launch profile (added a
.gitignoreexception so the samplelaunchSettings.jsonfiles are tracked).Verification
Installed the tool (
amazon.lambda.testtool0.15.0) and ran each sample:AddFunctionTopLevel—curl /add/5/3→8(HTTP 200)AddFunctionClassLibrary— verified both the.storeruntime-support path and a token-free CLIdotnet execlaunch →8(HTTP 200)ToUpperFunction—"hello world"→"HELLO WORLD"(HTTP 200)SQSProcessor— built-insqs.jsonevent → processed "Hello from SQS!" (HTTP 200)