Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe...

8

Click here to load reader

Transcript of Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe...

Page 1: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

iSQl-Reihe

Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst

Aus- und Weiterbildung zum Certified Tester – Advanced Level nach ISTQB-Standard

vonGraham Bath, Judy McKay

2., durchgesehene Auflage

dpunkt.verlag 2011

Verlag C.H. Beck im Internet:www.beck.de

ISBN 978 3 89864 735 9

Zu Inhaltsverzeichnis

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG

Page 2: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

1

1 Einführung

Es war eine dunkle und stürmische Nacht ... Oder war das derAnfang eines anderen Buches? Zumindest beschreibt diesererste Satz sehr treffend, wie sich manche Testprojekte in einerewigen Krise befinden und wie das Management oft im Dun-keln tappt – aber lassen wir dies vorerst beiseite.

Dieses Buch soll zwei Aufgaben erfüllen. Erstens bietet eshilfreiche Techniken und Methoden, die den erfahrenen Testerim Alltag erfolgreich unterstützen. Zweitens werden alle In-halte abgedeckt, die Sie kennen müssen, um die Prüfung zumErwerb der ISTQB-Advanced-Level-Zertifikate Test Analystund Technical Test Analyst zu bestehen. Im ersten Kapitel be-schreiben wir die Ziele, die wir uns für dieses Buch gesteckthaben, sowie die grobe Struktur der einzelnen Kapitel. Da-nach befassen wir uns mit zwei grundlegenden Fragen: Wasbedeutet die Bezeichnung »advanced« im Zusammenhang mitder Tester-Zertifizierung und wie ist die Rolle des Test Analystund Technical Test Analyst definiert?

Anmerkung: Um eine einheitliche Berufsbezeichnung einzu-führen, hat sich ISTQB für die Verwendung der Begriffe TestAnalyst und Technical Test Analyst entschieden. Der Test Ana-lyst konzentriert sich eher auf betriebswirtschaftliche als auftechnische Aspekte, während der Technical Test Analyst tech-nisch orientiert ist und in den meisten Fällen sehr viel Erfah-rung mit Softwareentwicklung und Softwaretesten mitbringt.In diesem Buch werden analog zur ISTQB-Terminologiedurchgängig die Begriffe Test Analyst und Technical Test Ana-lyst verwendet.

Page 3: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

1 Einführung2

1.1 Anforderungen an dieses Buch

Wir haben sehr hohe Anforderungen an dieses Buch gestellt. Bevor wirmit dem eigentlichen Inhalt des funktionalen und technischen Testensbeginnen, möchten wir Ihnen kurz diese Anforderungen darlegen undgleichzeitig damit auch unsere allgemeine Vorgehensweise verdeutlichen.

Unser Ziel war es, ein gut lesbares und vollständiges Buch zuschreiben.

1.1.1 Vollständigkeit

Dieses Buch basiert auf dem englischsprachigen ISTQB-Advanced-Level-Lehrplan (2007, [ISTQB-CTAL])1 und deckt alle Inhalte ab, dieSie kennen müssen, um die Prüfungen zum Test Analyst und TechnicalTest Analyst zu bestehen. Außerdem können Sie mithilfe des vermittel-ten Wissens Ihre Fähigkeiten und Kenntnisse vertiefen und dadurchIhre Chancen auf dem Arbeitsmarkt verbessern.

1.1.2 Lesbarkeit

Die Abdeckung des

Lehrplans ist nur eines der

Ziele dieses Buches.

Wenn man ein Buch auf der Basis eines bereits definierten Lehrplansschreibt, kann man leicht in einen Formulierungsstil verfallen, der sichlediglich auf die Behandlung des Lehrplans konzentriert. Natürlich istes notwendig, die Inhalte des Lehrplans abzudecken. Das Ergebnis istjedoch allzu oft ein eher trockener Stil, der sich an Definitionen orien-tiert und viele verschiedene Schriftarten und Symbole enthält, um aufeinzelne Teile des Lehrplans zu verweisen. Dies wollten wir vermeiden.Wir möchten Ihnen ein Buch bieten, das den Lehrplan abdeckt undsich gleichzeitig gut liest.

Wir möchten die Lesbarkeit dieses Buches erhöhen, indem jedesKapitel dem gleichen Aufbau folgt:

■ Technischer InhaltNach einer kurzen Einführung kommen wir zum eigentlichen tech-nischen Inhalt des Kapitels. Die Lernziele des ISTQB-Advanced-Level-Lehrplans beschränken sich nicht nur auf die Wiedergabevon angeeignetem Wissen. Vielmehr sollen sie dabei helfen, dasGelernte anzuwenden und eine Basis für gut begründete Entschei-dungen zu schaffen. Das Buch geht daher über die Inhalte des

1. Die vorliegende Übersetzung basiert auf dem deutschsprachigen Lehrplan zumCertified Tester, Advanced Level [URL: GTB].

Page 4: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

31.1 Anforderungen an dieses Buch

Lehrplans hinaus und bietet Ihnen anschauliches Material, um IhrWissen weiter abzurunden.

Eine realistische

und komplexe

Beispielanwendung

aus der Praxis

■ Blick in die PraxisDie meisten Kapitel enthalten einen Abschnitt mit dem Titel »Blickin die Praxis«. Dieser Abschnitt hilft Ihnen, das erlernte Wissen zuvertiefen und zu verinnerlichen. Auch bietet er eine willkommeneAbwechslung vom typischen Lehrbuchstil, der bei lehrplanorien-tierten Veröffentlichungen unwillkürlich vorherrscht. Diese Ab-schnitte sind daher vor allem für Leser von Interesse, die sich nichtnur auf den ISTQB-Lehrplan konzentrieren.

Wir beziehen uns hierbei auf unsere Marathon-Beispielanwen-dung (Beschreibung siehe Kapitel 2). Diese Beispielanwendungbasiert auf einem realen System und wird uns durch das gesamteBuch begleiten. Auf diese Weise behalten wir die vielfältigenAspekte des Testens stets im Auge.

■ LernkontrolleAm Ende jedes Kapitels geben wir Ihnen einen Überblick über dievermittelten Inhalte. Die im Laufe des Kapitels behandeltenISTQB-Begriffe werden in diesem Abschnitt aufgelistet. Die Defini-tionen dieser Begriffe finden Sie im [ISTQB-Glossar] sowie imMiniglossar in Anhang A.

Das Buch enthält außerdem eine Liste mit konkreten Lernzie-len. Diese basieren in erster Linie auf den Zielen des ISTQB-Advanced-Level-Lehrplans und werden vor allem für die Vorberei-tung auf die Zertifizierungsprüfungen von Nutzen sein. Wo essinnvoll erschien, haben wir die Lernziele des Lehrplans um unsereeigenen Ziele erweitert.

■ Erfahrungsberichte und Lessons LearnedWir haben im Laufe unserer Berufsjahre einen umfangreichenErfahrungsschatz gesammelt und möchten ein paar dieser Erfah-rungen mit Ihnen teilen. Wie so oft im Leben verlaufen die Dingenicht immer nach Plan. Diese Erfahrungen zeigen uns, dass eineZertifizierung als Tester keine automatische Erfolgsgarantie dar-stellt – in erster Linie deshalb, weil sich die Praxis nicht immer andie Theorie hält! Diese grau hinterlegten Textblöcke werden Siedurch das ganze Buch begleiten.

Wer steckt hinter dem »ich«? Bei jedem Kapitel gibt es einenHauptautor. Die nachfolgende Tabelle zeigt, wer welches Kapitelverfasst hat. Somit wissen Sie, wer mit »ich« gemeint ist, wenn wirErfahrungen und Lessons Learned mitteilen sowie Vorkommnisseerzählen, die wir ansonsten gerne verdrängen.

Page 5: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

1 Einführung4

■ ÜbungenDurch die Übungen lernen Sie, das theoretische Wissen anzuwen-den. Diese Übungen werden Ihnen in den ISTQB-Prüfungen natür-lich nicht begegnen (das wäre etwas zu einfach!).

Kapitel Titel Autor: Judy

Autor: Graham

1 Einführung x x

2 Marathon – unsere Beispielanwendung x

3 Aspekte des Testmanagements

3.1 Systemarten x

3.2 Testprozess x

4 Spezifikationsorientierte Testverfahren x

5 Strukturorientierte Testverfahren x

6 Fehlerbasierte Testverfahren x

7 Erfahrungsbasierte Testverfahren x

8 Analysetechniken x

9 Testen der Softwareeigenschaften x

10 Funktionales Testen x

11 Benutzbarkeitstests und Zugänglichkeitstests

x

12 Effizienztests x

13 Sicherheitstests x

14 Zuverlässigkeitstests x

15 Wartbarkeitstests x

16 Portabilitätstests x

17 Reviews x

18 Werkzeugkonzepte x

19 Abweichungsmanagement x

20 Kommunikationsfähigkeiten x

Tab. 1–1Wer hat welches Kapitel

geschrieben?

Page 6: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

51.2 Was bedeutet »advanced«?

1.2 Was bedeutet »advanced«?

Wenn man sich als »Advanced Tester« bezeichnet, kann das für vieleein rotes Tuch sein. Eine typische Reaktion darauf könnte folgender-maßen lauten: »Gut, dann sehen wir doch mal, ob Sie dieses Problemlösen können.« Konfrontiert mit dieser Herausforderung, sollte einprofessioneller Tester in der Lage sein, die Bezeichnung »AdvancedTester« zu erklären. Hier sind für alle Fälle ein paar schnelle Antwor-ten für Sie:

■ Advanced Tester haben Softwaretesten als ihren Beruf gewählt undsind bereits vom ISTQB zertifiziert (Foundation Level).

■ Sie haben ihre Fähigkeiten im Bereich Softwaretesten bereits auftheoretischer und praktischer Ebene unter Beweis gestellt undarbeiten auf einem hohen, international anerkannten Niveau.

■ Sie haben bereits Erfahrungen mit Testprojekten gesammelt.■ Sie können in einem Projekt die Rolle des Testmanagers, Test Ana-

lyst oder des Technical Test Analyst übernehmen.■ Sie wissen, dass Lernen ein lebenslanger Prozess ist und man sich

immer weiter verbessern kann.■ Sie haben daher höhere Chancen auf dem Arbeitsmarkt.

Professionellen Testern

kommt eine gemeinsame

Sprache zugute.

Noch ein weiterer (teilweise umstrittener) Aspekt zum Thema Zertifi-zierung: Die Advanced-Level-Zertifizierung bringt keinerlei Garantiemit sich. Es gibt viele gute Tester, die nicht zertifiziert sind. Die Zertifi-zierung zeigt jedoch, dass Sie einen hohen professionellen Standarderreicht haben und dass Sie die allgemein anerkannte Sprache derBranche sprechen. Da die IT-Branche stark globalisiert ist und vieleTestprojekte in mehreren Ländern durchgeführt werden, ist dies eingewaltiger Vorteil.

Wir, die Autoren, sind übrigens in allen drei Rollen auf demAdvanced Level zertifiziert und sind stolz darauf. Die wichtigstenOrganisationen, mit denen wir zusammenarbeiten, haben die Zertifi-zierungsprogramme in ihr Fortbildungsangebot aufgenommen, wassich sehr gut auf die Mitarbeitermotivation und die Kundenzufrieden-heit ausgewirkt hat.

Neben zertifizierungsrelevanten Inhalten bietet das Buch auch eineFülle an wertvollen Informationen, aus denen man als Advanced Tes-ter Nutzen ziehen kann. Ganz egal, ob Zertifizierung für Sie ein Themaist oder nicht, wir sind uns sicher, dass Sie in der Praxis von demGelernten profitieren werden.

Page 7: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

1 Einführung6

1.3 Was ist ein »Test Analyst«?

Es ist nicht leicht, eine Berufsbezeichnung auf internationaler Ebene zudefinieren. Oft verwenden unterschiedliche Länder oder sogar unter-schiedliche Unternehmen im gleichen Land verschiedene Bezeichnun-gen für die gleiche Rolle oder assoziieren ein etwas anderes Aufgaben-gebiet mit einer bestimmten Rolle. Dafür gibt es keinen bestimmtenGrund – die Terminologie hat sich schlicht und einfach so entwickelt.

Im Foundation Level hat das ISTQB dieses Problem teilweisebehoben, indem es die Rollen des Testmanagers (auch Testleitergenannt) und Testers eingeführt hat.

Die Rolle des Test Analyst

baut auf der des Testers

auf.

Im Advanced Level hat das ISTQB diesen Trend zur Standardisie-rung weitergeführt und die Rolle des Test Analyst eingerichtet. VomTest Analyst werden zunächst die gleichen Fähigkeiten erwartet, die einTester gemäß ISTQB-Foundation-Level-Lehrplan [ISTQB-CTFL] vor-weisen muss. Bei der Rolle des Test Analyst kommt jedoch eine Spezia-lisierung hinzu, die wir in diesem Abschnitt ansprechen möchten.

Was erwarten Sie von einem Test Analyst? Bei höchsten Anforde-rungen würde ein Arbeitgeber die folgenden grundlegenden Fähigkei-ten von einem Test Analyst erwarten:

■ Unterstützung des Testmanagers bei der Entwicklung geeigneterTeststrategien

■ Strukturierung der Testaufgaben, die notwendig sind, um die Test-strategie umzusetzen

■ Analyse eines Systems mit einer Genauigkeit, die eine Bestimmungder angemessenen Testbedingungen zulässt

■ Anwendung von geeigneten Techniken zur Erfüllung der definier-ten Testziele

■ Vorbereitung und Durchführung aller notwendigen Testaktivitäten ■ Beurteilung, wann Testkriterien erfüllt sind■ Präzise und gründliche Berichterstattung über den Fortschritt des

Projekts■ Belegen der Bewertungen und Reviews durch konkrete Testbei-

spiele■ Einführung der geeigneten Werkzeuge zur Erfüllung der Testaufga-

ben

Der Test Analyst ist mit der Rolle des Testmanagers vertraut und kenntdie Grundprinzipien des Testmanagements. Darunter fällt auch dieFähigkeit, bestimmte Anforderungen zu verstehen und die verschiede-nen Risikotypen einzuschätzen.

Page 8: Praxiswissen Softwaretest Test Analyst und Technical Test ... · PDF fileiSQl-Reihe Praxiswissen Softwaretest – Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum

71.3 Was ist ein »Test Analyst«?

Es werden zwei bestimmte

Arten von Test Analysts

definiert.

Die Position des Test Analyst wiederum wird laut Advanced-Level-Lehrplan und den Gepflogenheiten der Branche durch zwei unter-schiedliche Rollen definiert. Beide Rollen erfordern die zuvor genann-ten allgemeinen Fähigkeiten, jedoch werden sie in unterschiedlichenZusammenhängen angewandt. Ganz allgemein kann man sagen, dassder Technical Test Analyst eine eher technische Funktion erfüllt, wäh-rend der Domain Test Analyst eine eher betriebswissenschaftliche Her-angehensweise vertritt und Tests in seinem fachlichen Umfeld(domain) durchführt.

Technical Test Analyst:

■ Konzentriert sich auf technische Eigenschaften der Software, wiez.B. Zuverlässigkeit und Effizienz

■ Wendet strukturorientierte Testverfahren wie z.B. Entscheidungs-überdeckungstests an sowie bestimmte spezifikationsorientierteTestverfahren wie Äquivalenzklassenbildung

■ Führt statische und dynamische Analysen durch■ Wendet Reviewtechniken auf Codedokumente und technische

Dokumente wie z.B. Architekturentwürfe an■ Ist in der Lage, Testautomatisierung effektiv durchzuführen■ Kann die Werkzeuge für Effizienztests (z.B. Performanztests) und

für Analysen erfolgreich anwenden

Domain Test Analyst:

■ Konzentriert sich auf funktionale Eigenschaften der Software wiez.B. Funktionalität und Benutzbarkeit im jeweiligen Anwendungs-oder Fachbereich

■ Wendet eine breite Palette an spezifikationsorientierten Testverfah-ren an (mehr als der Technical Test Analyst)

■ Wendet Reviewtechniken auf fachspezifische Dokumente wie z.B.Anforderungen und Anwendungsfälle an

Der »Domain Test

Analyst« wird kurz

»Test Analyst« genannt.

Im Lehrplan zum ISTQB Advanced Level wird die Bezeichnung»Domain Test Analyst« zu »Test Analyst« gekürzt. Um Konsistenz mitder Lehrplanterminologie zu gewährleisten, haben wir diese Bezeich-nung ebenfalls übernommen.

Wenn wir im Verlauf des Buches die Lernziele erläutern, kenn-zeichnen wir stets deutlich, welche Abschnitte sich auf welche Rollebeziehen. Dies ist insbesondere für diejenigen Leser wichtig, die aneinem Trainingsseminar teilnehmen und/oder eine Zertifizierungsprü-fung ablegen möchten, da diese rollenbezogen angeboten werden (z.B.Test Analyst und Technical Test Analyst).