Philosophie
Ich habe feststellen müssen, dass es sehr viel unterschiedliche Zugänge zum Thema Software-Test gibt. In den letzten zehn Jahren haben sich Strömungen entwickelt, die teilweise als "Schulen" bezeichnet werden können, wobei sich starke Polarisierungen herausgestellt haben. Exploratives Testen bzw. Context Driven Testing versucht so weit wie möglich ohne starre Regressions-Skripts auszukommen. Firmen wiederum trachten nach möglichst umfassender Automation aller Testfälle und unterstützen auf diese Weise die "factory driven school".Der philosophische Ansatz kann aber auch ganz wo anders ansetzen: ist Testen dazu da, um Fehler zu finden? Bedeutet Test Kontrolle? Ist Test Unterstützung im Software-Entwicklungsprozess? Wie weit reicht eigentlich die Kompetenz eines Testmanagers.
Wenn ich hier von einer Philosophie spreche, so beziehe ich mich grundsätzlich auf eine andere Frage: was ist ein Software-Fehler? Warum gibt es ihn? Wäre er vermeidbar?
Entsprechende Überlegungen dazu finden sich hier.
Testmanagement
In einem Forum über Software-Testing argumentiert ein Mitglied:
"I see no reason not to make every tester on the team as expert as possible both in maintaining valuable test automation and in exploratory testing."
Cem Kaner antwortet darauf:
"We can’t make every tester an expert in everything. I think we should carefully consider the phrase, “jack of all trades, master of none.” I have worked with a lot of really excellent testers who couldn’t code their way out of a loop – they understood some domain under test, whether that was banking, printer compatibility, network configuration, grammar, financial modeling, dramatic storyboarding, video editing, etc. Rather than seeing these people as second class (or part-time consultant) members of an organization that assumes that every competent person is a programmer, I prefer to work with generalist GROUPS who achieve their diversity by having different members who have significantly different skills and preferences."
Testmanagement fängt mit der Selektion oder der Gruppierung der richtigen Mannschaft an. Mehr darüber findet sich hier.
Technik
Fehlerbehandlung
Es gibt Software-Tester, für die handelt sich der gesamte Software-Test nur um Fehler. Test besteht aus mehr als nur aus Fehlersuche. Fehler sind aber die kleine Währung von Software-Test. Es sind die Münzen. Die Banknoten sind die Testfälle. Zwischen den beiden bestehen Beziehungen. In diesem Abschnitt werden die Fehler behandelt.
Vienna Testing
Über Vienna Testing gibt es eine Menge zu berichten. Beim Aufbau einer zentralen Testabteilung in einem großen Versicherungskonzern lernte ich so ziemlich alle Schwierigkeiten kennen, die einem beim Testen von betrieblicher Software begegnen können. Eine Zeitlang waren wir ein "Black Team" wie das ehemalige, gefürchtete "Black Team" von IBM. Wir fanden mehr Fehler als man von uns erwartet hätte.
Die Motivation war hoch und der erste Grundsatz von Vienna Testing war etabliert. Testing is an enjoyable work.
Das sagt sich so leicht, aber dahinter stehen Workshops, Motivationsgespräche und eine Menge "management by wandering around".
Jedenfalls haben die meisten Grundsätze von Vienna Testing mit Psychologie zu tun, deswegen fand nicht nur ich den Namen ganz angebracht. Schließlich gibt es ja auch ein berühmtes Buch: Vienna waits for you. (Das ist der deutsche(!) Titel von Tom DeMarcos und Timothy Listers berühmten Buch Peopleware.)
Ihre Meinung
Kommentar von Hans Hartmann | 13.01.2008