Session

Fake it until you `make it`. API Integration Testing with testcontainers and WireMock

Testcontainers has become one of the most popular tools for software integration testing. If you can put your system-under-test into a container, Docker compose cluster or a pod, this is what you're likely to use. If your target isn't ready, not containerizable or just too heavy for testing as is, you can always use mock testing frameworks, e.g. WireMock or MockServer in the JVM ecosystem. Can you combine both approaches? Sure!

In this talk, we will classify integration testing and discuss application areas for WireMock and Testcontainers, and discuss which tool to choose for each use-case. And why not both? We will discuss putting WireMock into Testcontainers, and getting the best from their features thanks to the new WireMock modules for Testcontainers. Last but not least, we will see how to put WireMock in front of the Testcontainers or your real system to do deeper tests or even chaos engineering.

P.S: We will focus on the Java, Golang or Rust examples, but the same approaches can be used everywhere

Talk script:
1) Introduction. Classification of integration testing and common issues with it
2) Testcontainers and Mock testing. Why do they complement each other? How do you choose between them?
3) WireMock. Not just a Java library anymore. What’s going there and WireMock is now “a single tool to mock them all”?
4) Live Demo
5) Introducing WireMock in Testcontainers. Why and how?
6) Putting WireMock in from of the real system or Testcontainers for fault injection, fuzz testing or chaos engineering
7) Live Demos
8) Advanced use-cases
9) How to participate and join the community?

Scheduled presentations: JUG.ch (late 2023)

Living abstract document: https://docs.google.com/document/d/1VAZcVCNDdpjuBOv6T2DP_PCQaArYjtZDnKQg-Yi2F5g/edit?usp=sharing

Oleg Nenashev

Community Builder, CNCF Ambassador, Jenkins core maintainer

Neuchâtel, Switzerland

View Speaker Profile

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top