Keine Software ist perfekt – aber Qualität ist trotzdem ein wichtiger Faktor in der Programmierung. Die Praxis zeigt: Wer von Anfang an auf systematisches Testing setzt, spart am Ende Zeit, Geld und Nerven. Denn nichts ist ärgerlicher als schlechter Code, der erst im laufenden Betrieb auffällt.
Bei OPEN setzen wir auf die clevere Kombination verschiedener Teststufen. Warum? Weil einzelne Testmethoden zwar gut sind, aber erst ihr Zusammenspiel den maximalen Impact bringt. In diesem Artikel zeigen wir dir unseren Weg zu mehr Qualität durch die Integration von drei wesentlichen Testing-Levels.
Die Basis für qualitativ hochwertige Software beginnt bei der Zusammenarbeit. Code Reviews haben sich bei OPEN Application Development als effektive Methode etabliert, bei der entwickelter Code durch eine*n zweite*n Entwickler*in innerhalb des Teams geprüft wird.
Dieser systematische Prozess ermöglicht:
Ein wichtiger Aspekt dabei: Die Prüfungseinheiten sollten überschaubar bleiben. Die bewährte Praxis zeigt, dass pro Ticket in einem Issue-Tracking-System wie Jira ein separater Branch in der Versionsverwaltung (z.B. GitLab) optimal ist.
Neben der manuellen Prüfung spielt die Automatisierung eine zentrale Rolle in der modernen Qualitätssicherung von Software. Den Grundstein dafür legt bei OPEN Application Development die statische Code-Analyse: Sie prüft den Code, ohne ihn auszuführen, indem sie den Quellcode auf offensichtliche Flüchtigkeitsfehler und Abweichungen von Coding-Standards analysiert. Dieser erste Schritt in Richtung Automatisierung ist fundamental und sollte in keinem Entwicklungsprozess fehlen.
Darüber hinaus kommen verschiedene Arten automatisierter Tests zum Einsatz:
Frontend- und End-to-End-Tests simulieren Nutzerinteraktionen zur Funktionsprüfung
Die CI-Pipeline (Continuous Integration Pipeline) fungiert bei OPEN Application Development als automatisierte Kette von Prüfungen, die festgelegte Tests durchführt. Ein zentrales Element dabei ist die Erstellung von Review-Apps als eigenständige Testumgebungen. Häufig gibt es nur eine Staging-Umgebung, bei der sich alle Änderungen mischen. Dies kann zu Verwirrung bei allen Beteiligten führen, weil nicht klar ist, welche Änderungen abgenommen werden sollen. Review-Apps ermöglichen es, neue Features oder Änderungen direkt und mit wenig Aufwand manuell zu testen, ohne dabei das Produktivsystem zu beeinflussen.
Die Effizienz und Nachhaltigkeit dieses Prozesses wird durch mehrere Faktoren optimiert:
Smart Testing: Nur tatsächlich geänderte Komponenten der Anwendung durchlaufen den Testprozess
Ressourcenmanagement: Pipeline-Server fahren nachts und am Wochenende automatisch herunter. Sollten doch mal Tests anstehen, fahren sie auch automatisch wieder hoch.
Kosteneffizienz: Auch bei umfassender Testabdeckung sparen wir durch diese Optimierungen erheblich an Ressourcen und Kosten
Da manuelles Testing oft der Standard ist und gefühlt für die meisten Unternehmen ausreicht, stellt sich oft die Frage: Lohnt sich der Aufwand für automatisierte Tests für mein Produkt überhaupt? Automatisierung bedeutet zwar einen geringen Mehraufwand von etwa 10-15% – Tests müssen konzipiert, implementiert und gewartet werden –, dieser rechnet sich jedoch um ein Vielfaches durch die langfristigen Vorteile. Die Antwort liegt in der strategischen Herangehensweise an die Testabdeckung. Entscheidend ist dabei der Fokus:
Basierend auf dieser Analyse lässt sich ein maßgeschneidertes Testkonzept entwickeln. Der besondere Mehrwert entsteht dabei durch die Kombination verschiedener Testebenen: Während Code Reviews die grundlegende Qualität sichern, automatisieren Unit- und Integrationstests die Prüfung kritischer Funktionen. Die CI-Pipeline bringt alles zusammen und macht den Test-Prozess zu einem integralen Bestandteil der Auslieferung.
Das Ergebnis dieser systematischen Herangehensweise:
Im Interview spricht Mirco Müller, Geschäftsführer der OPEN CX, mit Conrad Barthelmes, Head of Development im Team Application Development, über die zentrale Rolle von Qualität in jedem Entwicklungsschritt.