Der Softwaretester ist im Prozess der Softwareentwicklung hinten angesiedelt. Seine Aufgabe ist es, die Arbeit des Entwicklers zu prüfen. Dabei kommen verschiedene Verfahren zum Einsatz, denn es ist nicht einfach damit getan, dass ein wenig in der Software herumgeklickt wird. Wie in vielen anderen Branchen auch sind Ressourcen in einem IT-Unternehmen knapp und müssen möglichst
Der Softwaretester ist im Prozess der Softwareentwicklung hinten angesiedelt. Seine Aufgabe ist es, die Arbeit des Entwicklers zu prüfen. Dabei kommen verschiedene Verfahren zum Einsatz, denn es ist nicht einfach damit getan, dass ein wenig in der Software herumgeklickt wird. Wie in vielen anderen Branchen auch sind Ressourcen in einem IT-Unternehmen knapp und müssen möglichst effizient eingesetzt werden. Ziel sollte es sein, besonders brisante Teile des Programms zu testen, bei denen ein Fehlverhalten maximale Unzufriedenheit oder Schaden beim Nutzer verursachen würde. Beispiele sind Rechnungserstellung, Berechnung wissenschaftlicher Ergebnisse und Ähnliches.
Eine Möglichkeit sind automatisierte Tests, die in JAVA geschrieben werden oder einer anderen Sprache. Damit werden Abläufe in der Software simuliert und die Ergebnisse können ausgewertet werden. Wichtig sind ganzheitliche Tests, sowohl manuell als auch automatisiert, da der Einbau neuer Funktionen auch Nebeneffekte auf bereits bestehenden Code hat und somit neue Fehler an Stellen eingebaut werden könnten, der gar nicht geändert wurde.
Ein Software Tester arbeitet meist im Team. Jeder Tester kann dabei auf bestimmte Bereiche der Software spezialisiert sein. Diese Spezialisierung kann nach funktionalen Gesichtspunkten oder Softwareaspekten (zum Beispiel User Interface versus Datenlogik) geschehen.
Skills, die ein Software-Tester unbedingt haben muss
Wie in jedem Berufsfeld hat jeder Softwaretester andere Schwerpunkte. Aber egal, wo diese liegen, müssen die folgenden Fähigkeiten zumindest in den Grundlagen vorhanden sein, um ein Mindestmaß bei der Qualität der Arbeit des Softwaretesters sicherzustellen.
Skill 1 – Programmierkenntnisse
Kenntnisse beim Programmieren helfen in zweierlei Hinsicht. Auf der einen Seite ist es gut, die Programmiersprache zumindest in Grundsätzen zu verstehen, in der das Programm entwickelt wurde. Dies hilft, die richtigen Testfälle zu definieren. Ein Beispiel: Eine Eingabemaske erwartet eine Zahl zur Berechnung eines Ergebnisses. Eine Software kann nur mit Zahlen, nicht mit Buchstaben rechnen. Der Programmierer muss diese Fehleingabe abfangen, sonst stürzt das Programm ab. Ein guter Softwareentwickler weiß das und versucht das Programm mit einer Fehleingabe auf Robustheit zu prüfen.
Auf der anderen Seite werden automatisierte Tests selbst in einer Skriptsprache auf die verschiedenen Testfälle eingestellt, was Aufgabe des Softwaretesters ist.
Skill 2 – Kenntnisse in Testtools
Wie ein Programmierer, nutzt auch ein Tester Tools, um seine Arbeit zu erledigen. Diese können recht komplex sein und bedingen eine längere Einarbeitungszeit. Wer bereits mit entsprechenden Kenntnissen bei seinem potenziellen Arbeitgeber vorstellig werden kann, hat klare Vorteile.
Skill 3 – Arbeiten im Team (Soft Skills)
Auch wenn bei manchen immer noch das Klischee vorherrscht, wer in der IT arbeitet, sei ein Nerd, der in einem verdunkelten Büro komische Dinge an einem Computer macht und kaum aufschaut und erst recht nicht mit anderen spricht: So ist es in der Realität aber nicht.
Wer heute in der IT arbeitet, egal ob im Software Testing oder in der Programmierung kommt um gute Fähigkeiten in der Kommunikation nicht herum.
Skill 4 – Frustrationstoleranz
Wer den ganzen Tag Fehler sucht und findet, der muss resistent sein gegenüber Frust. Es ist nicht jedermanns Sache, von einem Programmabsturz zum nächsten zu arbeiten und dabei nicht das Gefühl zu bekommen, zu verzweifeln.
Skill 5 – Reisetätigkeit
Dieser Skill trifft vor allem auf Freelancer Software Tester zu, die nicht bei einem Unternehmen angestellt sind, sondern ihre Expertise wechselnden IT-Firmen zur Verfügung stellen.