Isolierte Integrationstests – Testcontainers Kickstart
20. September 2021, 9:00 - 16:15 Uhr
Beim Testen von Anwendungen werden meistens andere Systeme benötigt, z.B. eine Datenbank oder ein Message-Bus. Diese lassen sich leicht mit Docker auf dem Entwicklungsrechner bereitstellen. Testcontainers sorgt für die elegante Einbindung in die Testausführung.
Wir beginnen Hands-on, um die Mechanik von Testcontainers kennen lernen. Danach wird es über unterschiedliche Arten der JUnit-Integration und deren Auswirkungen auf Laufzeit und Testdesign zu der Integration mit SpringBoot gehen. Im Laufe des Nachmittags wird ein größeres Szenario erarbeitet, bei dem Container untereinander kommunizieren und die Web-Oberfläche per Browser – auch im Container – mit Selenium abgetestet wird.
Vorkenntnisse
- Solide Java-Kenntnisse
- JUnit (4 oder 5)
- Grundlagen Docker
Lernziele
- Funktionsweise von Testcontainers
- Erstellung von Tests mit Datenbanken
- Test der Anwendung im Container
- Integrationstests mehrerer Anwendungen
- Oberflächentests von Webanwendungen
- Einbindung in CI-Umgebungen (Theorie und Stolpersteine)