How to speed up Spring Integration Tests

Integrationstests sind ein wesentlicher Bestandteil des Softwareentwicklungsprozesses, da sie sicherstellen, dass alle Teile einer Anwendung sauber zusammenarbeiten. Mit zunehmender Größe und Komplexität einer Anwendung steigt auch üblicherweise die Anzahl der Integrationstest.

Damit die Ausführungszeit der Integrationstests nicht zum Bottleneck in unserer CI/CD-Pipeline wird, geht es in diesem Talk um Techniken zur Beschleunigung von Integrationstests in einer Spring-Boot-Anwendung.

Der Großteil der Ausführungszeit geht fast immer für die Erstellung des sogenannten "Spring Context" drauf. Damit nicht für jeden Integrationstest ein komplett neuer Spring Context erstellt werden muss, bringt Spring Boot bereits von Haus aus ein Konzept mit. Doch wenn man nicht aufpasst, wird dieses Konzept schnell ausgehebelt und man profitiert eben nicht von schnell laufenden Integrationstests.

Worauf man bei der Erstellung von Spring-Boot-Integrationstests unbedingt achten sollte, was es mit "Spring Boot Test Slices" auf sich hat und welche Möglichkeiten es sonst noch gibt, um schnellere Integrationstests zu bekommen, erfahrt ihr in diesem Talk.

Lernziele

  • Wie funktioniert Spring Context Caching?
  • Was verhindert das Cachen des Spring Context?
  • Wie finde ich heraus, welcher Integrationstest einen neuen Spring Context erzeugt?
  • Was sind Spring Boot Test Slices und wie funktionieren sie?

Speaker

 

Dirk Kröhan
Dirk Kröhan ist Softwarearchitekt bei der QAware GmbH in Mainz. Neben seiner Passion für gute Softwarearchitektur entwickelt er leidenschaftlich gerne Cloud-Native-Systeme. Besonderes Interesse legt er dabei auf die Themen Java und Spring Boot.

betterCode-Newsletter

Du möchtest über die betterCode() Spring und weitere unserer betterCode()-Events auf dem Laufenden gehalten werden?

 

Anmelden