26-Jan-2010 Warum Tester

From The Joel on Software Translation Project

Jump to: navigation, search

Warum Tester?

26dog!-thumbnail.JPG

Meine Schwester hat sich für Ihre Kinder ein kleines Hündchen angeschaffen und versucht, dem Welpen ein paar Sachen anzutrainieren. Um mit einem Hund zusammen in einem Haus zu leben muss sich das Tier an ein paar Verhaltensregeln halten: Keine Leute anspringen, nicht ins Haus zu sch... - ähmm - koten, auf Kommando zu "sitzen" und nie - nie, wirklich niemals am iPad rumzuknabbern. Niemals! Gutes Mädchen.

Der Trick, einem Hund etwas beizubringen, ist es, dem Tier immer unmittelbar Feedback zu geben. Wenn Sie erst Stunden später nach Hause kommen, nachdem der Hund Ihre Küche mit dem Inhalt Ihres Abfalleimers verunstaltet hat, ist es zu spät, zu schimpfen. Natürlich können Sie schreien so laut Sie können - aber der Hund wird nicht verstehen, warum. So schlau sind Hunde eben nicht.

Doch auch bei Programmierern verhält es sich genauso: Um besser zu werden in dem was sie machen, setzt unmittelbares Feedback über die Ergebnisse voraus - egal, ob positiv oder negativ. Je schneller das Feedback ankommt, desto schneller werden Sie hinzulernen können. Denn bei lange geplanten, großen Softwareprojekten kann es mehr als ein Jahr dauern, bis Sie endlich Feedback von Ihren Kunden bekommen.

26marzocco-thumbnail.jpg

Und das ist einer der Gründe, warum wir Tester haben. Ein guter Software-Tester gibt Programmierern unmittelbar Feedback über das was gut oder schlecht läuft. Ob Sie's glauben oder nicht - eins der wichtigsten Eigenschaften eines Softwaretesters ist es, schnell konstiktive Kritik zu bringen. Es gibt keinen besseren Weg, die Leistungsbereitschaft und Moral eines Programmierers zu steigern als (eine La Marzocco Lines Expresso-Kaffeemaschine) ihnen Tester zur Verfügung zu stellen, die in kurzen Abständen die neuesten Releases testen und sowohl positives und negatives Feedback weitergeben. Ansonsten kann es sehr demotivierend sein, Programmierer zu sein. Hier bin ich - tippe den ganzen Tag, schreibe den ganzen genialen Code und niemanden kümmert es. Boo-hoo.

Wer sollte Tester sein? Das ist nicht so einfach! Software zu testen ist einer der Karrierewege, die nicht so publik sind. Deshalb kommen viele Leute, die gute Tester wären und den Job lieben würden niemals auf die Idee sich beruflich dafür zu entscheiden.

Anzeichen für einen guten Tester:

  • Wissensneugierig
  • Liebt es zu "puzzeln" - auch die Puzzles, die Tage lang dauern, bis man sie lösen kann
  • Logisches Denken
  • Mag es, mit Software und mit Computer zu arbeiten

Sie müssen kein Programmierer sein, um ein guter Tester zu sein. Viele Firmen möchten Tester, die Programmierer sind, um automatisierte Testunits zu entwickeln. Es scheint effizienter zu sein, als die Software "durchzuklicken". Das deutet auf eine fehlendes Verständnis hin, wofür Tester sind, wie Code getestet werden sollte und wie gute und schlechte Sachen in einer Software ausfindig gemacht werden um diese positiven und negativen Ergebnisse an die Programmierer zurückzugeben.

Sicher - automatisierte Testskripte sind zeitsparend, aber Software zu testen umfasst weitaus mehr, als automatisierte Tests abbilden zu können. Wenn Sie zu viel Vertrauen in solche Skripte stecken, werden Sie niemals merken, dass Texte falsch ausgerichtet sind, Sie werden keine hässlichen Benutzeroberflächen entdecken, scheussliche Farbgestaltung und Inkosistenz bleiben undentdeckt. Im Gegenteil - Sie werden ein paar Tester haben, die den ganzen Tag an ihrem Testcode arbeiten und ihre Energie darin verschwenden, ihre eigenen Codes zum Laufen zu bekommen, statt das zu machen, was sie eigentlich tun sollten: Den Code anderer Programmierer zu testen.

Eine denkbar fürchterliche Idee ist es, Testaufgaben den Job-Bewerbern zu geben, die sich ursprünglich als Programmierer bewerben, dafür aber nicht gut genug sind. Tester müssen keine Programmierer sein, aber wenn Sie denken, ein Tester ist nur ein inkompetenter Programmierer, werden Sie eventuell ein Team aus inkompetenten Programmierern und nicht ein Team, aus kompetenten Testern zusammenstellen.

Denn Testen lernt man mit der Zeit von alleine - Intelligenz bekommt man allerdings nicht von alleine. Deshalb brauchen Sie wirklich sehr schlaue Leute als Tester, auch wenn sie noch über keine Erfahrungen als Tester haben. Viele der besten Tester, mit denen ich jemals zusammen gearbeitet habe, haben gar nicht realisiert, dass sie Testern sein wollen, bevor ihnen irgendjemand einmal den Job auf's Auge gedrückt hat.

Wenn Sie:

  • Software und Computer lieben
  • In einem Software-Team arbeiten wollen
  • und nicht selbst programmieren wollen

sollten Sie darüber nachdenken, Tester zu werden. (Übrigens: Wir stellen ein! Welch ein Zufall!)


(übersetzt am 30. Januar 2010 von Robert Wismet)

Personal tools