Software-Testing und Testautomation (nachfolgend TA genannt) gehören zu den Disziplinen, die oft im Schatten der eigentlichen Softwareentwicklung stehen. Ein wenig unsichtbar vielleicht, aber entscheidend für die Qualitätssicherung und darüber, ob aus Code ein verlässliches, belastbares Produkt wird.
Unser Gesprächspartner ist Andre Mochinin, Test Automation Architect und Experte seines Fachs, mit dem wir bereits mehrfach erfolgreich Projekte umgesetzt und Kunden nachhaltig unterstützt haben.
Neben der Disziplin an sich sprechen wir mit Herrn Mochinin über den Einfluss von KI auf diesen Bereich, sowie den Stellenwert menschlicher und unabhängiger Leistung.
Hallo und vielen Dank für das Gesprächsangebot.
Ich arbeite seit über 15 Jahren in der Software-Entwicklung, davon den Großteil in der Qualitätssicherung. Seit gut zehn Jahren liegt mein Schwerpunkt klar auf Testautomatisierung. In dieser Zeit habe ich in verschiedenen Branchen, vom Maschinenbau über Logistik bis hin zu Finance und Insurance, Projekte begleitet und dort das gesamte Spektrum der Testautomatisierung umgesetzt: von der Automatisierung einzelner Testfälle bis hin zum Aufbau kompletter TA-Architekturen und der Integration in bestehende Systemlandschaften.
Genau. Ein zentrales Werkzeug meiner Arbeit ist das Robot Framework. Dort bin ich seit vielen Jahren in der Community aktiv, entwickle Libraries wie etwa die DatabaseLibrary, und halte regelmäßig Vorträge oder Workshops auf Konferenzen.
Ergänzend dazu gebe ich Schulungen rund um Testautomatisierung mit dem Robot Framework - sowohl online als auch vor Ort.
Das ist eine sehr gute Frage. Vorab ein kurzer Hinweis: Ich bin kein KI-Experte, weswegen ich nicht alle Aspekte KI-gestützter Softwareentwicklung vollständig beurteilen kann, aber ich nutze KI seit Jahren aktiv, sowohl privat, als auch beruflich und somit in Kundenprojekten. Und auf dieser Grundlage kann ich einschätzen, wie sich KI auf Entwicklungsprozesse auswirkt.
Aus meiner Sicht führt der Einsatz von KI auf jeden Fall zu mehr Bedarf an Testing und Testautomatisierung. Das liegt weniger daran, dass KI zwangsläufig fehlerhaften Code produziert, sondern daran, dass sie die Software-Entwicklung signifikant beschleunigt. Sobald schneller und häufiger Code entsteht - egal ob von Menschen oder Modellen - steigt die Zahl der Stellen, an denen Fehler entstehen oder sich unerwartete Seiteneffekte zeigen können. Und das führt natürlich zu einem steigenden Bedarf an Tests und Testautomation.
Hinzu kommt, dass KI-generierter Code oft korrekt aussieht, aber im Gesamtsystem trotzdem unvorhergesehene Auswirkungen haben kann. Das Verständnis der „Absicht“ hinter dem Code und seine Einbettung in bestehende Architekturen bleibt weiterhin Aufgabe von Menschen im Softwareentwicklungsprozess. Und hier braucht es Tests, die reproduzierbar, schnell und zuverlässig laufen, also automatisierte Tests.
Das ist die Fortsetzungen eben jenes Trends, den wir schon seit Jahrzehnten beobachten: Die Entwicklungsgeschwindigkeit steigt kontinuierlich, Märkte verlangen kürzere Release-Zyklen, Systeme werden komplexer. Testbedarf wächst immer mit und ist auch immer weniger manuell zu bewältigen. Deshalb ist Testautomatisierung längst ein zentraler Bestandteil moderner Softwareprojekte und wird hier auch immer mehr Raum einnehmen.
Spätestens seit der Covid-Pandemie hat sich dieser Trend noch einmal verstärkt: Die Digitalisierung hat in vielen Business-Bereichen massiv an Fahrt aufgenommen, was zusätzliche Systeme, neue Prozesse und schnellere Iterationszyklen erzeugt – und damit wiederum einen deutlich höheren Bedarf an verlässlichen Tests.
Jetzt verstärkt die KI-bedingte Beschleunigung diesen Trend zusätzlich. KI-gestützte Entwicklung erzeugt in kürzerer Zeit deutlich mehr Code. Das erhöht naturgemäß die Fehleranfälligkeit und damit eben auch den Bedarf an stabilen Testprozessen, die sich manuell immer weniger darstellen lassen und damit Testautomatisierung in den Fokus rücken.
Gerne! Denken wir zum Beispiel an ein Versicherungsunternehmen, das sich vorgenommen hat, seine Geschäftsprozesse zu digitalisieren, insbesondere die Verarbeitung eingehender Dokumente wie Rechnungen oder Nachweise. Ziel ist es, die Inhalte dieser Dokumente maschinell auszulesen, möglichst viele Fälle automatisch zu verarbeiten - Beispiele sind hier die Datenaktualisierungen oder das Auslösen von Erstattungen - und die verbleibenden Vorgänge an die richtigen Sachbearbeiter weiterzuleiten.
Angenommen, dafür kommt eine fertig entwickelte Software eines Drittanbieters zum Einsatz, die bereits getestet ist. Betrachtet man diese Software als eigenständiges System, müssen auf der Systemteststufe keine weiteren Tests mehr durchgeführt werden. Allerdings muss diese Standardsoftware an die konkreten Geschäftsprozesse angepasst und konfiguriert werden. So kann beispielsweise definiert werden, dass Rechnungen über einem bestimmten Betrag eine manuelle Freigabe durch einen Sachbearbeiter erfordern.
Diese Geschäftsprozesse sind häufig sehr komplex, ihre Abbildung in der Software entsprechend anspruchsvoll und zudem nicht statisch, da sie sich im Laufe der Zeit verändern. Genau diese Konfigurationen und Prozessabbildungen müssen daher getestet werden.
Hinzu kommt die Integration der Dokumentenverarbeitungssoftware mit weiteren Systemen. Dokumente können nicht nur per Post eingehen, sondern auch per E- Mail, über eine Handy App oder über einen Browser. Unabhängig vom Eingangskanal müssen sie einheitlich verarbeitet und entlang der definierten Geschäftsprozesse weitergeleitet werden.
Die Kundenportal-Anwendungen selbst können zugekauft oder individuell entwickelt sein und müssen ebenfalls getestet werden. Wenn ein Kunde beispielsweise eine Rechnung über eine Handy App einreicht, muss diese korrekt in der Datenbank ankommen und gleichzeitig in der Browser Anwendung im Postfach sichtbar sein.
Darüber hinaus existieren interne Softwaresysteme, mit denen die Sachbearbeiter täglich arbeiten. Spätestens an dieser Stelle befinden wir uns dann auch auf der Ebene der Systemintegrationstests
Mit zunehmender Automatisierung der Dokumentenverarbeitung und einer stetig wachsenden Anzahl an Testobjekten stößt man mit rein manuellen Tests schnell an praktische und wirtschaftliche Grenzen. Um Qualität und Stabilität dennoch sicherzustellen, ist der Aufbau einer geeigneten Testautomatisierung erforderlich. An dieser Stelle kommt der Testautomatisierungsarchitekt ins Spiel.
Er soll bei der Konzeption und dem Aufbau der TA-Lösung zentrale Fragen beantworten: Welche Testobjekte eignen sich für eine Automatisierung? Wie lassen sich Tests schnell und effizient umsetzen, ohne dabei Zuverlässigkeit, Wartbarkeit und Lesbarkeit zu vernachlässigen? Wann und in welchen Abständen sollen die Tests ausgeführt werden?
Darüber hinaus spielen Aspekte wie aussagekräftiges Reporting, der Umgang mit Testdaten, die Integration in bestehende Systeme (z. B. Testmanagement, CI-Pipelines oder Versionsverwaltung) sowie ein effizienter Entwicklungs- und Wartungsprozess eine entscheidende Rolle.
Genau. Wie deutlich wird, sind dabei zahlreiche und unterschiedliche Aspekte zu berücksichtigen. Eines der zentralen Themen ist, dass die Testautomatisierungsarchitektur möglichst offen, technologieunabhängig und skalierbar bleibt und mit den Veränderungen der Systemlandschaft mitwachsen kann. Viele Testautomatisierungstools konzentrieren sich auf einzelne Technologien wie Web oder Java. In ihrem jeweiligen Fokusbereich erfüllen sie ihren Zweck durchaus gut, stoßen jedoch an Grenzen, sobald komplexere Integrationsszenarien hinzukommen, etwa wenn zusätzlich eine Mobile App als Testobjekt integriert werden soll.
Hier sind Testframeworks im Vorteil, die sich über Libraries erweitern lassen und dadurch ein breites Spektrum unterschiedlicher Testobjekte abdecken können. In diesem Kontext ist es besonders wertvoll, wenn ein Testautomatisierungsarchitekt sowohl über breites fachliches Wissen als auch über praktische Erfahrung aus mehreren Projekten verfügt, verschiedene Entwicklungsphasen von Testautomatisierungslösungen erlebt hat und die typischen Herausforderungen aus der Praxis kennt.
Ein großer Pluspunkt externer Berater ist ihre vielfältige Erfahrung: Durch praktische Einblicke und die Mitarbeit an realen Lösungen in unterschiedlichsten Projekten bringen sie einen breiten Erfahrungsschatz mit, der für Unternehmen sehr wertvoll ist. Zudem entwickeln sich externe Berater kontinuierlich weiter, da sie sich meist auf einen klar definierten fachlichen Schwerpunkt konzentrieren, etwa als Spezialisten für Testautomatisierung. Dadurch bleiben sie fachlich stets auf dem neuesten Stand, weil sie sich überwiegend mit dieser Aufgabe befassen und weniger durch interne oder projektspezifische Nebentätigkeiten gebunden sind.
Ein weiterer Vorteil ist die organisatorische Unabhängigkeit: Sie ermöglicht eine objektive Sichtweise und fördert eine neutrale, unverstellte Beratung.
Gerade im Bereich der Testautomatisierung bleibt der Mensch aus meiner Sicht weiterhin unverzichtbar - insbesondere bei Automatisierungen auf höheren Teststufen wie den Systemintegrationstests. Die größten Herausforderungen liegen hier häufig nicht in der reinen Programmierung, bei der KI bereits gut unterstützen kann, sondern im Requirements Engineering und in der Testspezifikation. Oft ist zunächst unklar, wie die beteiligten Systeme genau zusammenwirken sollen.
Hinzu kommen architektonische Fragestellungen, die von vielen Unbekannten geprägt sind, nicht nur durch aktuelle Rahmenbedingungen, sondern auch durch mögliche, heute noch nicht absehbare Änderungen in der Zukunft. In diesen Bereichen bleibt menschliche Erfahrung, Urteilskraft und Kontextverständnis weiterhin von zentraler Bedeutung.
Ich danke Ihnen, Herr Grimm, für die Gelegenheit zu diesem interessanten Interview. Ich habe mich über den Austausch sehr gefreut.
Das Gespräch zeigt, wie stark der Bereich Testing und Testautomatisierung in den vergangenen Jahren an Bedeutung gewonnen hat und wie wichtig menschliche Expertise als Korrektiv gerade im Zusammenspiel mit KI bleibt. Erfahrung, methodisches Vorgehen und ein geschulter Blick sind entscheidend, um Qualität und Verlässlichkeit in modernen Software- und Digitalisierungsprojekten sicherzustellen.