Scrum ist ein agiles Framework für das Projektmanagement, das speziell dafür...

Testautomatisierung
Testautomatisierung
Testautomatisierung steigert die Qualität und Effizienz im Entwicklungsprozess und führt so zu einem besseren Produkt. Gleichzeitig können die Entwicklungsdauer und -kosten reduziert werden. So können Testfälle, die bereits erfolgreich durchgeführt wurden auch bei neuen Releases eingesetzt werden. Ein weiterer Vorteil ist die höhere Abdeckung von Testfällen.
Wann ist Testautomatisierung sinnvoll?
Automatisierte Tests lohnen sich dort, wo wiederkehrende Testfälle entstehen.
Die Testpyramide
Die Testpyramide ist ein Modell, das die einzelnen Teststufen nach ihrem Umfang graphisch darstellt. Die klassischen Teststufen, die auch das ISTQB empfiehlt, sind Akzeptanz-, System-, Integrations- sowie Unittests.
Die Spitze der Testpyramide bilden Akzeptanztests. Sie stehen am Ende der Testphase und dienen als abschließende Prüfung. Unter realen Einsatzbedingungen wird die Funktionalität geprüft, dies kann beispielsweise in Form von Beta-Tests erfolgen. Da sie aufwendig und kostspielig sind, sollten sie einen geringen Teil der Gesamttests ausmachen.
Vor den Akzeptanztests stehen die Systemtests, bei denen geprüft wird, ob die Anwendung als ganzheitliches System funktioniert. In der Regel erfolgt dies mit Hilfe von Testdaten auf einem Testsystem.
Den Systemtests gehen die Integrationstests voran. Diese dienen zur Prüfung, ob die einzelnen Komponenten des Gesamtsystems fehlerfrei zusammenspielen.
Die Basis im Testprozess bilden die Unit-Tests, bei denen die einzelnen Komponenten der Anwendung isoliert geprüft werden.
Tools zur Testautomatisierung
Die Liste der Tools zur Testautmatisierung ist lang und die Auswahl abhängig vom Testfall. Um einige beispielhaft zu nennen: Selenium, Soap UI, Cucumber, Ranorex werden häufig in der Automatisierung von Tests angewendet.
Continuous Testing
Eine Herausforderung für das Testen von Software stellt das Continuous Delivery-Prinzip der agilen Softwareentwicklung dar. Durch die kürzeren Entwicklungszeiten und ständige Entwicklung neuer Features muss ein effizientes Testkonzept eingeführt werden. Parallel zur Entwicklung sollten vollautomatisierte Tests die Software-Stabilität prüfen, um eine Beurteilung dieser zu ermöglichen. Ein solches Konzept greift somit nicht erst im Bereich der UI-Tests, sondern bereits auf der Ebene von Integrations- und Unit-Tests.
VORTEILE VON TESTAUTOMATISIERUNG
Schnellere Entwicklung
Frühzeitige Aufdeckung von Fehlern
Bessere Systemqualität
Verbesserung der Systemstabilität und Performance
Kostenreduzierung
Fehlerbehebungskosten werden gesenkt
Flexibilität
Tests können unabhängig von Arbeitszeiten ablaufen
Artikel, die Sie auch interessieren könnten:
Scrum
Qualitätskriterien für Anforderungen in der Softwareentwicklung
Die Definition und Überprüfung von Benutzeranforderungen ist ein wesentlicher...
Tools und Frameworks für Softwaretests
Im Software Engineering existieren verschiedene Vorgehensmodelle, die den...
Weitere Artikel finden Sie in unserem IT-Blog.
Neueste Kommentare