Reinventing Quality

ERROR: Content Element with uid "6784" and type "dce_dceuid16" has no rendering definition!

Testen von Microservice-Architekturen

Kaum ein Thema wurde in den letzten Jahren auf Architekturkonferenzen intensiver diskutiert als Microservices. Amazon, Netflix und Spotify setzen bereits intensiv auf dieses Architekturmuster. Nun zieht auch die Industrie nach.

Technisch gesehen wird bei diesem Architekturmuster ein komplexes System in mehrere unabhängige Prozesse (den Microservices) geteilt. Kommuniziert wird über sprachunabhängige Programmierschnittstellen, meist REST. Die Vorteile sind vielfältig: Jedes Entwicklungsteam ist für einen Microservice zuständig – von der Entwicklung bis zum Ausliefern. Welche Programmiersprache und Technologien zur Anwendung kommen, kann jedes Team selbst bestimmen. Darüber hinaus setzen Architekten Microservices wegen ihrer guten Skalierbarkeit, Ausfallsicherheit und Austauschbarkeit ein.

Und da sind wir auch schon bei einer der vielen Herausforderung: Jedes Entwicklungsteam kann zu einem beliebigen Zeitpunkt ihr Microservice austauschen. Es gibt daher nicht „das System“. Es gibt ständig neue Versionen des Systems! Mit klassischen Systemtests kommt man hier nicht weit.

Wir brauchen neue Strategien und wir werden dabei Neuland betreten müssen. Gleich vorweg: Wir werden u. a. über viele Testpyramiden, Consumer-Driven Contract Tests, Asynchronität, Testen in Produktion, Monitoring und fiese Affen reden (müssen). Freuen Sie sich auf dieses spannende Thema!

Johannes Hochrainer, Software Quality Lab

Johannes Hochrainer ist seit 10 Jahren Berater und Trainer bei Software Quality Lab. In jährlich über 30 Projekten und Seminaren beschäftigt er sich mit Software Architektur, Testautomatisierung und Testprozessen. Für einen Automobilzulieferer entwickelte er Unit Testing Schulungen und tourt damit durch Europa und Asien. Neuerdings schult er Entwickler auch im Testen von Microservices.