Practical integration testing using Testcontainers

Improve the quality of integration tests by bringing the power of Docker containers directly into your test code

Ratings: 4.53 / 5.00




Description

Why should you learn about Testcontainers, and what is it at all? If you reached here, you'll surely have an idea about that. I suppose you're testing your software already and want to figure out what Testcontainers can exactly do for you to somehow improve the quality of testing.

So welcome here to the first course on Udemy regarding that topic. I'm Ansgar, and I'm a freelanced software engineer, working with tools like Testcontainers almost every day.

Testcontainers points out, that it makes testing - especially integration testing - easier. I totally agree, but there are other - relevant and important - aspects which should be mentioned. Here are only a few examples:


  • It makes extension of your integration tests scope to the outermost boundaries possible without having to switch to full-fledged e2e tests

  • You can avoid having potentially confusing test setup with mocks and fakes

  • Using H2 although that's likely not your production database? No longer soon, perhaps ...

  • Not relying on JPA but on plain SQL and want to test your statements against a production-like database system? Easy with Testcontainers!

  • Using Docker in your build lifecycle already? Then setting up Testcontainers is in a breeze

  • ...

In this course, I'll talk about the above-mentioned topics and give you a step-by-step walkthrough of the most important features of Testcontainers. For this, I'll stick to the following guidelines:


  1. This course is about practice, not primarily theory (theory of testing for example)

  2. I keep sections short in order to accelerate your progress. I do this by not losing myself in endless details. If a question stays open: Leave me a message

  3. Feedback and discussions are always welcome. I plan to extend this course content on demand based on your feedback

Ready for takeoff? Subscribe to the course and let's go right away.

What You Will Learn!

  • Where to use Testcontainers and why
  • Concepts and basics of Testcontainers library
  • Mocking systems as a whole instead of mocking certain modules in your code
  • Create, start and stop docker containers from your integration test code directly
  • How to integrate Testcontainers into the software build lifecycle
  • Usage of Testcontainers in example applications

Who Should Attend!

  • Software developers who want to bring the power of Docker containers into their testing infrastructure
  • Software developers just interested in this topic