macio GmbH
6

Qualitätssicherung und Software-Testing bei macio

Während im Qualitätsmanagement, wie im vorangegangenen Beitrag beleuchtet, Prozesse und Arbeitsweisen unter die Lupe genommen werden, setzt die Qualitätssicherung das Ergebnis unserer Arbeit in den Fokus. Sie stellt sicher, dass unsere Softwareprodukte fehlerfrei laufen und optimal in den Umfeldern funktionieren, in denen sie eingesetzt werden.

Hierbei reicht es nicht, das fertige Produkt abschließend auf seine Funktionalität zu testen. Um die Nutzungskontexte berücksichtigen zu können, ist unsere Qualitätssicherung bereits in der Projektanbahnung involviert. Gemeinsam mit unseren Kunden arbeiten wir Gütekriterien heraus, die eine Anwendung erfüllen muss und evaluieren Schwerpunkte, die für die Software von besonderer Bedeutung sein werden. Legt der Kunde beispielsweise hohen Wert auf die Kompatibilität seiner Anwendung, so ist es besonders wichtig, alle relevanten Schnittstellen in die Tests der Software einzubeziehen.

Sind sämtliche Spezifikationen an die Software festgelegt, begleitet unsere Qualitätssicherung den gesamten Entwicklungsprozess und stellt sicher, dass alle Qualitätskriterien erfüllt werden.

Vielschichtige Tests sichern Qualität des Quellcodes

Das Testen der Software erfolgt hierbei in einem pyramidenartigen Schema. Zunächst werden sogenannte Unit Tests durchgeführt. Hierbei werden viele, möglichst kleine Einheiten des Quellcodes auf Fehlerfreiheit getestet. Ist diese gegeben, werden mehrere der getesteten Units miteinander kombiniert und weiterführend in Integrationstests erneut geprüft. Treten hierbei Probleme auf, so können wir davon ausgehen, dass sie im Zusammenspiel, jedoch nicht in einer einzelnen Unit selbst liegen. Solche Fehler können durch die Anpassung bestimmter Parameter innerhalb der Units behoben werden. Ist das Zusammenspiel der einzelnen Units gesichert, folgen abschließend End-to-End-Tests, bei denen wir die gesamte Anwendung für verschiedene Aktionen auf ihre Funktionalität testen.

Software Tests werden nach einem pyramidenartigen Schema durchgeführt.


Testautomation deckt Fehler in Sekundenbruchteilen auf

Die Unit- und Integrationstests erfolgen vollkommen automatisiert. Unit-Tests können auf diese Weise in Sekundenbruchteilen abgeschlossen werden, was unsere Entwickler*innen enorm entlastet. Sie können sicher sein, auf der Grundlage fehlerfreien Codes weiterzuentwickeln. Eventuelle Fehler können frühzeitig erkannt und daher ressourcenschonend korrigiert werden, bevor der Arbeitsaufwand durch Folgefehler exponentiell ansteigt. Die Entwicklung automatisierter Tests stellt einen komplexen einmaligen Arbeitsaufwand dar, den unsere ISTQB qualifizierten Tester*innen jedoch sicher bewältigen.

Lohnend ist dieser Einsatz in jedem Fall, denn Testautomation erhöht die Effizienz unserer Entwicklung erheblich. Sie ist einer der Kernfaktoren, die es uns ermöglichen, in zeitökonomischer Weise Softwareprodukte höchster Qualität zu entwickeln.

 

Software Engineering QS Testautomation