Loading

Software-Anwendungen zu erstellen für einen Kunden ist ein komplexes Tätigkeitsfeld. Die Entwickler setzen die Anforderungen an die Funktionalitäten um. Programmierer erstellen anschließend den Code. Allerdings ist damit der Prozess der Softwareentwicklung noch nicht beendet. Es muss noch geprüft werden, ob die Software fehlerfrei funktioniert. Für die Qualitätssicherung müssen daher Tests durchgeführt werden bei allen Komponenten der Software.

Damit diese nicht willkürlich passieren, sondern nachvollziehbar und systematisch ablaufen, haben sich in der Praxis standardisierte Testverfahren entwickelt. Diese Software Testing Methoden sind en Detail niedergeschrieben. Wer als Software-Tester arbeiten möchte, der kann durch eine Zertifizierung nachweisen, dass er die Regeln dieser Testverfahren beherrscht. Eine Möglichkeit hierzu ist zum Beispiel die Bescheinigung vom Institut der ISTQB – dem International Software Testing Qualifications Board.

Das Gute an diesen Zertifizierungen ist zum einen, dass IT-Experten nachweisen können, dass sie Software professionell testen können. In Bewerbungsgesprächen immer ein Pluspunkt. Zudem können Software-Tester Freelancer ihre Qualifikation nachweisen. Denn in diesem Bereich wird häufig auf Freiberufler zurückgegriffen. Auf eine solche Zertifizierung lässt sich heute eine berufliche Existenz gründen.

Software testen – welche Verfahren gibt es?

Bei Testverfahren für Software oder einzelne Software-Komponenten gibt es im Wesentlichen zwei wichtige Verfahren: statische und dynamische.

Statische Software-Tests

Statische Verfahren kontrollieren Artefakte. Das sind zum Beispiel Überprüfungen der Requirements auf Vollständigkeit oder Untersuchungen des Quelltexts. Dabei wird die Software nicht auf einem Computer ausgeführt. Es ist also kein Benutzer-Test, sondern eine Art theoretische Prüfung.

Testobjekte sind bei dieser Vorgehensweise die Dokumentationen, in denen Leistungsanforderungen und Leistungsbeschreibungen niedergelegt sind. Zudem auch der Quellcode. Grundsätzlich könnte aber jegliche Art von Arbeit als Testobjekt dienen. Wichtig ist zu wissen, dass die Software noch nicht aufgeführt wird.

Dynamische Software-Tests

Bei den dynamischen Tests überprüfen die Experten die tatsächliche Funktionsfähigkeit der einzelnen Komponenten eines Programms oder eine App. Dazu werden sämtliche Menüs und Felder ausprobiert und es wird geschaut, ob jedes davon funktioniert. Hierzu gibt es drei verschiedene Vorgehensweisen:

Erfahrungsbasierte Methoden

Bei dieser Testmethode wird nicht systematisch getestet. Stattdessen werden von erfahrenen Nutzern und Entwicklern Überprüfungen durchgeführt. Aufgrund ihrer Kenntnisse haben sie meist ein großes Wissen über ähnliche Anwendungen und Vorgängerversionen. Daher kennen sie mit der Zeit die wichtigsten Schwächen und Fehlerquellen.

Problem hierbei ist, dass die Qualität der Arbeit stark von der Vorerfahrung der Testpersonen abhängig ist. Für eine grobe Fehleranalyse der wichtigsten Funktionalitäten im Softwareprodukt ist sie jedoch gut geeignet.

Black-Box-Test

Hier wird der Benutzer in den Mittelpunkt gestellt. Er verfügt über keinerlei Kenntnisse des Quellcodes. Ihm wird aufgetragen Testfälle durchzuführen aufgrund der Anforderungen, die im Lastenheft hinterlegt sind. Im Grunde probiert man wie als Anwender aus, ob das Software-Produkt die Aufgaben ausführen kann, für die es konzipiert wurde.

White-Box-Test

Der White-Box-Test zählt innerhalb der dynamischen Prüfungsverfahren zu denen, die am allermeisten verwendet werden. Er ist insbesondere deshalb so zielführend, weil der Tester Zugriff auf beide Komponenten hat: Quellcode und User-Oberfläche. So lassen sich die Spezifikationen direkt ausprobieren. Bei problematischen Testfällen kann die Ursache direkt lokalisiert und möglicherweise gleich behoben werden.

Der Markt für Software Tests

Software und App-Programmierung ist ein gigantischer Wachstumsmarkt. Demzufolge ist der Bedarf an Qualitäts-Management im Softwarebereich mit angestiegen. Firmen benötigen immer wieder Mitarbeiter, die für diesen Bereich qualifiziert sind oder sie suchen die Zusammenarbeit mit Freiberuflern. Eine Ausbildung auf diesem Gebiet ist ein lohnendes Investment.