Painless Integration Testing with Docker and Testcontainers
Coming soon
start 2PM CEST
4 hours
Moving your project to the latest Java can mean faster code, cheaper cloud bills, but above all, an application that cannot be hacked easily! Just by using Java 11, you can save up to 25% of heap memory, and there are many other benefits.

If you write your code to the latest Java, it would become clearer, concise, and easy to read which means less chance to produce bugs.
Kevin Wittek
Institute for Internet Security Head of Blockchain Research Lab
Testcontainers co-maintainer and Testcontainers-Spock author, passionate about OSS, containers and Linux. Oracle Groundbreaker Ambassador. Software Crafter and testing fan. Fell in love with TDD because of Spock. Believes in Extreme Programming as one of the best Agile methodologies. Likes to write MATLAB and Python programs to support his wife in performing behavioural science experiments with pigeons. Plays the electric guitar and is a musician in his second life.

After many years working in the industry as an engineer, Kevin is now doing his PhD in computer science in the field of distributed systems engineering and is leading the Blockchain Lab at the Institute for Internet Security in Gelsenkirchen, Germany at the Westphalian University of Applied Sciences.

Unit testing is fine, but without proper integration testing, especially if you work with external resources like databases and other services, you might not know how your application will actually behave once it has been deployed to the real production environment.

Before Docker, configuring the environment for integration testing was painful – people were using fake database implementations, mocking servers, usually it was not cross-platform as well. However, thanks to Docker, now we can quickly prepare the environment for our tests.

In this workshop, I would like to show how you can use Testcontainers ( ) – a popular Java testing library that harnesses Docker to easily, reliably, spin up test dependencies. We will use it with a Spring Boot microservice and test against real PostgreSQL and Redis data stores, we'll isolate it from other microservices, then start Selenium browsers in Docker and test our application, and all with the same library!

Come and learn why Apache, Spring, ZeroTurnaround, JetBrains, Playtika, Zipkin and others already decided to use Testcontainers for their integration testing
The best way to improve your professional skills

15 min

3,5 hours

30 minutes

15 min
2020, September 5
Setting up the work environment
Exploring the example application
Adding some tests
The first Testcontainers integration
Blackbox testing with RestAssured and monitoring endpoints
SingleContainer Pattern
Integration testing business logic and Kafka integration
Leverage integration testing to check edge cases of external dependencies
Selenium Browser testing
General experience in using the following technologies is expected. Participants can tag along if they don't know all the details, but some topics might get too complex if they are missing the basics:
  • Java
  • Docker basics
  • JUnit 4
  • Spring-Boot basics are helpful
As this is a hands-on workshop, it is essential that you bring a prepared workstation, containing the following software:
at least JDK 8
IDE of choice (IntelliJ IDEA recommended)
Docker CE 19.x
Important: Please prepare the environment & install Docker before the workshop! We can guarantee that it will work on the following environments:
  • Any Linux with native and up to date Docker installation. The user needs Docker permissions.
  • macOS with Docker Desktop for Mac
  • Windows 10 with Docker Desktop for Windows (WSL2 or Hyper-V backend)
  • How types can help you build better software
  • What are types, and what are their limits
  • How to get started with Reason/OCaml
  • What are some patterns that you can rely on to make types easier to work with
  • How to Think with Types even if you don't have them

And in the process you will build a few small applications that will help cement these ideas.
    You will be able to upgrade your Java skills with the latest version which means you are no longer fall behind
    You will be able to write clear and concise code with the lambda expression which means less chance to produce bugs
    You will be able to write declarative and expressive code easily which means less code but more results
    You will learn how to refactor old legacy and imperative code with modern functional programming which means less error in your code
    You will be able to process large data set in parallel which means a faster result
    You will be able to process large data set in parallel which means a faster result
    Smart Bird
    2021, May 29
    Time 11 am GMT
    Book Now 10 participants ONLY
    Geekle Corp.
    910 Foulk Road, Suite 201
    Wilmington, DE
    19803, USA
    Designed by:
    Click to order
    Contact Information
    Promo code
    Payment method
    Contact the organizer if you need a refund