Softwaretester

"All code is guilty, until proven innocent."
Dort wo der Programmierer seine Aufgaben beendet, fängt die Arbeit des Softwaretesters an. Softwaretesting misst die Erfüllung der vorher definierten Anforderungen an eine Software und ihre Qualität. So können Fehler aufgedeckt und die Benutzerqualität gesteigert werden. Allerdings kann ein Softwaretester niemals die völlige Fehlerfreiheit garantieren - "Programm testing can be used to show the presence of bugs, not never show their absence". Ziel ist, mit einer möglich geringen Anzahl an Testcases, eine große Testabdeckung zu erreichen.

Technologie | Tools | Methoden

  • White-Box Test: Bezeichnet das Testen mit Kenntnissen über die innere Funktionsweise des zu testenden Systems (Offener Code)
  • Black-Box Test: Bezeichnet das testen ohne Kenntnisse über die innere Funktionsweise des zu testenden Systems (Fokus auf das ausgegebene Verhalten der Software)
  • Modultest: (Auch Komponententest oder Unittest) Test einzelner Komponenten der Software
  • Integrationstest: (Auch Interaktionstest) Test der Zusammenarbeit einzelner Komponenten der Software. Der Schwerpunkt liegt auf den Schnittstellen
  • Systemtest: Test des gesamten Systems auf die vorgegebene Anforderungen. Wird normalerweise in einer Testumgebung durchgeführt
  • Abnahmetest: (auch User Acceptance Test, UAT) Test der gelieferten Software durch den Kunden

Wissenswertes

Während Modul- und Integrationstest überwiegend durch White-Box Methoden, also mit Blick in den Code getestet werden, finden System- und Abnahmetest überwiegend als Blackbox-Test statt, da das Verhalten der Software bei spezifischen Vorgängen und nicht der Code der Software im Vordergrund steht.

Fun Fact

"Software testers do not make software; they only make them better"