Test Your Cloud Like You Mean It: Integrating Testcontainers and LocalStack

You’ve been there: Your Unit tests pass both locally and in CI. You deploy with confidence. You thought.. Then staging in the real cloud reveals the truth—bugs that only show up with actual RDS parameter settings, real SQS and SNS throughput limits, or Lambda and API Gateway behaviour your local mocks never captured.

The solution is Testcontainers.

Testcontainers is a testing library that provides easy and lightweight APIs for bootstrapping integration tests with real services wrapped in Docker containers. Using Testcontainers, you can write tests talking to the same type of services you use in production without mocks or in-memory services. Spin them up, run migrations, execute your Node.js service against them, assert results, auto-cleanup.

Related Talks

Multi-account and multi-region in LocalStack

Multi-account and multi-region compatibility enables users to manage and deploy resources across multiple AWS accounts and geographic regions. This functionality enhances the robustness of the deployments by offering improved fault tolerance, scalability, and regulatory compliance. By segregating resources into separate accounts and distributing them across various regions, users can minimize the impact of potential failures and optimize performance. In this session from LocalStack Community Meetup May '24, Sannya Singhal discussed how you could use LocalStack to emulate multi-account and multi-region environments locally for testing and development purposes, ensuring that applications were resilient and scalable before deployment to the cloud.

Learn More
Learn More
Mounting local directories for ECS tasks with LocalStack

LocalStack's cloud emulator lets you run Amazon Elastic Container Service (ECS) clusters and tasks on your local computer. It's sometimes useful to mount code from the host filesystem directly into the ECS container. This helps quickly test changes without needing to rebuild and redeploy the ECS Task's Docker image each time. This video explains how to use code mounting with the ECS bind mounts feature.

Learn More
Learn More
LocalStack Neptune development with G.V() — Gremlin IDE

We’re partnering with gdotv to simplify development with our Amazon Neptune cloud emulator component. You can now easily query, visualise and model your graph data either interactively or using the Gremlin querying language with G.V() - Gremlin IDE. With G.V(), you can considerably enhance your graph database development experience whilst gaining access to a powerful reporting and visualisation toolset for your production data. With LocalStack’s core cloud emulator, parity is ensured between a local Neptune instance and AWS’s own, meaning Gremlin queries in your development environment will behave identically on Amazon Neptune. In this video we demonstrate how to use G.V() with LocalStack Neptune.

Learn More
Learn More

Launch yourself in the world of local cloud development

Try for free
Try for free
Talk to Sales
Talk to Sales