Warum Softwaretest und Testautomatisierung?
Wir werden alle agiler! In der agilen Vorgehensweise sollen in immer kürzeren Release-Zyklen Softwareanpassungen in mindestens gleichbleibender, möglichst aber mit steigender Qualität umgesetzt werden.
Darüber hinaus werden die Anforderungen an eine Software stetig komplexer. Wir verwenden Micro-Services, Cloud-Lösungen, bringen verschiedene Technologien zusammen, nehmen Datenschutzthemen sehr ernst und halten gleichzeitig die Velocity hoch.
Mit jedem Deployment gilt es verschiedene Risiken zu vermeiden, wie beispielsweise Reputationsverluste, finanzielle Einbußen oder gar den Verlust von Kunden.
Gute Softwaretests können einen deutlichen Effizienz- und Qualitätsfaktor darstellen und folgende Vorteile generieren:
- Wettbewerbsfähigkeit stärken
- Entwicklungseffizienz steigern
- Kundenvertrauen maßgeblich fördern
- Risiken reduzieren und Sicherheit schaffen
Es ist unabdingbar Softwaretests in den Entwicklungszyklus einer Software bzw. Anwendung zu integrieren.
Was genau sind und machen Softwaretests?
Softwaretests stellen einen Prozess dar, welcher die Funktionalitäten einer Anwendung bewertet und die Umsetzung spezifischer Kriterien überprüft sowie bestehende Fehler identifiziert. Im Optimalfall begleitet der Prozess den gesamten Software-Lebenszyklus. Die Prozessdurchführung kann sowohl manuell als auch automatisiert erfolgen. Abhängig ist diese Entscheidung von der Komplexität, der Wiederholbarkeit und der Effizienz. Grundlegend wird die Durchführung des Prozesses in folgende 4 Stufen geteilt:
UNIT TESTS
Sie werden in den ersten Phasen einer Softwareentwicklung und meist direkt durch den Entwickler durchgeführt. Dabei werden die entwickelten Komponenten einzeln getestet.
INTEGRATIONSTESTS
Diese testen weiterführend, wie sich die einzelnen Komponenten im Zusammenspiel verhalten, dabei werden auch die Schnittstellen zwischen Systemen und Anwendungen betrachtet.
SYSTEMTESTS
Verifizieren, ob ein System als Ganzes die spezifizierten Anforderungskriterien erfüllt.
End2End-Tests / Akzeptanztests
Hier wird die neue Anwendung in Gänze getestet. In den Vordergrund werden hierbei die Erfüllung der Anforderungen und Wünsche der zukünftigen User gestellt.