Session: Delightful Tests With Testcontainers

Containerized services are an excellent tool for creating repeatable, isolated environments ideal for integration tests.

In this session, we’ll look at the Testcontainers — the open source libraries providing flexible API for programmatically creating, configuring, using, and controlling lifecycle of your service dependencies in Docker containers.

Running databases from PostgreSQL and MySQL, to MongoDB and Neo4j, to message brokers like RabbiMQ, Kafka, to Elasticsearch, and even cloud technologies straight from your tests ensures that environment config is always up-to-date and consistent during both local development and in CI pipelines. You can have both the user experince of unit tests — running individually from IDE, debugging your code, and confidence of integration tests testing with real technologies you will use in production.

You’ll learn everything necessary to start adding powerful integration tests to your codebase without the headache of managing external service dependencies manually!

Presenters: