Infrastructure-as-Code refers to the practice of defining and provisioning cloud resources using code and automation scripts, thus eliminating the need for manual configurations. With frameworks like AWS CloudFormation, AWS CDK (Cloud Development Kit), AWS Serverless Application Model (SAM), Pulumi, and Terraform, users can specify their desired infrastructure state in code, enabling rapid and consistent deployment of resources.However, as with any code, IaC scripts require thorough testing to ensure their correctness and proper functionality. Traditional cloud environments for testing can be expensive, slow, and error-prone due to complexities in provisioning and configuration. With LocalStack, you can leverage a local emulation of various cloud services, such as S3, DynamoDB, EKS, and more!LocalStack simulates these cloud services on a developer's machine, allowing for comprehensive and efficient testing of IaC scripts before deployment to actual cloud environments. In this video, we explain how you can use LocalStack to be more efficient and cost-effective at testing these major IaC frameworks:• Terraform• Pulumi• Cloud Development Kit• CloudFormation• Serverless Application ModelAs organizations will continue to embrace IaC, cloud emulation framework like LocalStack will play an increasingly vital role in ensuring the quality and robustness of cloud infrastructure implementations.

In this session, Maximillian Hoheiser discussed developing & testing AWS Data Streaming with LocalStack! In this talk, he focused on Kinesis Data Firehose, an AWS service that allows you to extract, transform, and load streaming data into various destinations like Amazon S3.He dived into how to set up testing for Kinesis Firehose and seamlessly integrated it with other services using Boto3 and CDK/CloudFormation. Maximillian led a live demonstration, showcasing how to set up a practical business case, implement it, and rigorously test it using LocalStack.

Local development and testing are significant for engineers who wish to ship confidently onto production environments. Test-driven development (TDD) has been adopted as an essential practice to enforce that and ensure that every code change is validated locally and on CI. This is where we arrive at the Testcontainers libraries that support your tests, providing lightweight, ephemeral instances of common databases, message brokers, web browsers, or anything else that can run in a Docker container. With Testcontainers, available in different popular languages: Java, Go, .NET, JavaScript/Typescript, and Python, you can replicate the production environment on your local machine and test everything (including AWS APIs powered by LocalStack)! Testcontainers ensure that the data access layer, user interface, and application are tested well at each step. In this session, we have looked at Testcontainers and how to adopt them to develop our applications locally and run our integration tests while using LocalStack to provision cloud resources inside a Docker container before pushing your application to production! In the end, we have also discussed how LocalStack and the Java version of Testcontainers play nicely with each other and wind up with updates about the all-new LocalStack release!