AWS is introducing AWS Emulator, a free tool that allows developers and coding agents to build and test AWS applications locally or in a CI environment. No AWS account or deployment is required.
With AWS Emulator, existing AWS SDK and CLI calls go to a local environment on the user’s computer or within the CI pipeline instead of the cloud. Responses are returned within milliseconds. This allows developers and their coding agents to detect and fix errors before anything is sent to AWS.
Resources are created and managed using the same calls as in AWS itself. They are signed with credentials provided by the emulator. For supported operations, the tool returns the same results as the actual platform and, for invalid calls, the same error messages. Operations not yet supported return the 501 Not Implemented error status.
AWS gives the example of a coding agent creating an Amazon DynamoDB table. The agent then tests it offline and adjusts the code before deploying it.
Isolated instances in memory
The emulator retains the state of resources in memory until it is stopped. Each launched instance gets its own port, keys, and in-memory state. This means that agents, test suites, and CI jobs cannot see each other’s resources. The tool is also not tied to a specific AWS region.
The services are generated from the API models published by AWS, the same models that underpin the AWS SDKs. When a new service or API is added, it also appears in the emulator. The company then implements and verifies the behavior release by release. The company provides a fidelity report showing how closely the responses match those of AWS.
There is no additional cost for the AWS Emulator. Users pay only for AWS resources once they deploy to the cloud. The source code is available on GitHub under the CC0 1.0 Universal Public Domain Dedication.
Tip: AWS tests and proves: European Sovereign Cloud can stand on its own