Similar presentations:
Folie. Grundlagen
1. Folie 1
11
2
3
Grundlagen
Testen im
Lebenszyklus
Statische
Methoden
4
5
63
Testentwurfsverfahren
Testmanagement
Testwerkzeuge
V 3.0 - 1 / 61
ISTQB Certified Tester
Foundation Level
T-Systems · PDC Test · 2011
2. Begriffsklassifizierung
1Begriffsklassifizierung
ISTQB Certified Tester
Foundation Level
Diese Kursunterlagen enthalten einen Kurzglossar*auf
Basis von „ISTQB®/GTB Standardglossar der Testbegriffe
“ Version 2.1 vom 30.09.2010.
Die Begriffe im Kurzglossar sind kategorisiert:
G Klasse 1:
Alle Begriffe des Lehrplans, die geprüft werden können
Klasse 2:
Begriffe, die in den Kursunterlagen sinngemäß behandelt sind.
Alle Begriffe, die im Kurzglossar enthalten sind, werden in
den Folien kursiv dargestellt.
Nur diese Begriffe können mit Definition in der Prüfung
abgefragt werden.
V 3.0 - 2 / 61
T-Systems · PDC Test · 2011
3. Folie 3
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Lernzielstufe
K2
Softwaretesten ist notwendig
K2
Was ist Softwaretesten?
K2
Sieben Grundsätze des Softwaretestens
K1
Fundamentaler Testprozess
K2
Psychologie des Testens
K2
Ethische Leitlinien
Siehe Lehrplan, Kapitel 1 für die Lernzielbeschreibung dieses Moduls
Siehe Anhang A, Beschreibung der Lernzielstufen
V 3.0 - 3 / 61
T-Systems · PDC Test · 2011
4. Software-Systeme bestimmen das Leben (K1)
1ISTQB Certified Tester
Foundation Level
Software-Systeme bestimmen das Leben (K1)
SW-Systeme in allen Lebensbereichen
Business-Software (z.B. Bankenanwendungen)
Gebrauchsgegenstände (z.B. Automobilindustrie)
SW-Systeme werden immer komplexer
Wertpapierabwicklungssysteme mit Schnittstellen zur Börse, zu
Systemen anderer Banken weltweit, mandantenfähig und
mehrsprachig
Integration zahlreicher Einzelsysteme verschiedener Hersteller zu
einem funktionierenden Gesamtsystem
SW-Systeme funktionieren nicht immer
Welche Erfahrungen
haben Sie gemacht?
V 3.0 - 4 / 61
T-Systems · PDC Test · 2011
5. Probleme durch Softwarefehler
1Probleme durch Softwarefehler
ISTQB Certified Tester
Foundation Level
Einige Fehler kosten sehr wenig (wenn überhaupt etwas)
Kleinere Unbequemlichkeiten
Keine schädliche Auswirkung
Einige Fehler kosten Millionen
Ariane 5 ($7 Mrd.)
American Airlines ($50 Mio.)
Einige Fehler kosten Leben
Patriot Missile (28 Tote)
Strahlungsbehandlung (6 Tote)
Einige Fehler verursachen Imageschäden
Neues Lufthansa Quick Check-in System
Einige Fehler sind immer noch vorhanden!
Virgin Atlantic A340
V 3.0 - 5 / 61
T-Systems · PDC Test · 2011
6. Bezeichnungen für Fehler
1Bezeichnungen für Fehler
ISTQB Certified Tester
Foundation Level
Fehler
Fehlerwirkung
Mangel
Fehlhandlung
Ausfall
Die Begriffe sind
leicht
zu verwechseln!
Defekt
Bug
G Fehler:
Die Abweichung zwischen dem berechneten, beobachteten oder gemessenen
Wert oder einem Zustand der Betrachtungseinheit und dem entsprechenden
spezifizierten oder theoretischen Wert.
Oberbegriff für Fehlhandlung, Fehlerzustand, Fehlerwirkung (siehe nächste Folie)
Mangel:
Ein Mangel liegt vor, wenn eine gestellte Anforderung oder berechtigte Erwartung
nicht angemessen erfüllt wird.
V 3.0 - 6 / 61
T-Systems · PDC Test · 2011
7. Fehlerarten: Zusammenhänge
1Fehlerarten: Zusammenhänge
ISTQB Certified Tester
Foundation Level
G Fehlhandlung: Die menschliche Handlung, die zu
einem falschen Ergebnis führt. [nach IEEE 610]
Fehlhandlung
verursacht
Fehlerzustand
G Fehlerzustand / Defekt : Zustand eines (SW)
Produkts oder einer seiner Komponenten, der
unter spezifischen Bedingungen (z.B. bei einer
hohen Belastung) eine geforderte Funktion des
Produkts beeinträchtigen kann bzw. zu einer
Fehlerwirkung führt (z.B. falsch programmierte
oder vergessene Anweisung). (Engl. „Bug“)
kann führen zu
Fehlerwirkung
G Abweichung:
Jedes Ereignis, welches während
des Testens auftritt und weiterer
Untersuchungen bedarf
G Fehlerwirkung:
Wirkung eines Fehlerzustands, die bei
der Ausführung des Testobjekts nach
»außen« in Erscheinung tritt.
V 3.0 - 7 / 61
T-Systems · PDC Test · 2011
8. Ursachen für Fehlerzustände in der SW
1Ursachen für Fehlerzustände in der SW
ISTQB Certified Tester
Foundation Level
Menschen schreiben Software
Wir können nicht alles wissen
Unsere Fertigkeiten sind nicht perfekt
Jeder von uns macht Fehler
Lieferzeiträume werden immer kürzer
Druck, etwas im “first to market”- Rennen zu liefern
Die Versuchung, (möglicherweise inkorrekte) Annahmen zu treffen
Schlecht definierte Testprozesse zögern das Testen bis zuletzt hinaus
Systeme sind komplex
Neue Technologien und Entwicklungsmethoden
Können unsere Fertigkeiten mit den wachsenden Anforderungen Schritt
halten?
Änderungen von HW-Konfigurationen
Umgebungsbedingungen, Strahlungen, elektromagnetische Felder,
Schmutz
V 3.0 - 8 / 61
T-Systems · PDC Test · 2011
9. Die Rolle des Testens
1Die Rolle des Testens
ISTQB Certified Tester
Foundation Level
Testen kann das Risiko reduzieren, dass Fehlerzustände
im operativen Betrieb auftreten
Testen liefert einen Beitrag zur Erhöhung der
Softwarequalität
Test: Fehlerzustände werden gefunden
Betrieb: bevor das System in den Betrieb geht
Testen kann helfen, formale Anforderungen zu erfüllen
Vertraglicher Art
Gesetzliche Vorgaben
Industriespezifische Anforderungen (Medizin, Militär)
V 3.0 - 9 / 61
T-Systems · PDC Test · 2011
10. Software, Testen und Softwarequalität
1Software, Testen und Softwarequalität
ISTQB Certified Tester
Foundation Level
G Software: Programme, Prozeduren und möglicherweise
zugeordnete Dokumentation und Daten für die
betreffende Verarbeitung auf einem Computersystem.
[IEEE 610]
Testen versucht, die
Softwarequalität zu
messen
z.B. Anzahl Fehler
Testabdeckungen
Das Finden und
Beseitigen von
Fehlerzuständen
verbessert die
Softwarequalität
V 3.0 - 10 / 61
T-Systems · PDC Test · 2011
11. Folie 11
1Definitionen: Testen, Softwarequalität
ISTQB Certified Tester
Foundation Level
G Testen:
Der Prozess, der aus allen Aktivitäten des Lebenszyklus besteht
(sowohl statisch als auch dynamisch), die sich mit der Planung,
Vorbereitung und Bewertung eines Softwareprodukts und
dazugehöriger Arbeitsergeb-nisse befasst. Ziel des Prozesses ist
sicherzustellen, dass diese allen festgelegten Anforderungen genügen,
dass sie ihren Zweck erfüllen und etwaige Fehlerzustände zu finden.
G Softwarequalität:
Der Grad, in dem ein System, eine Komponente oder ein Prozess die
Kundenerwartungen und -bedürfnisse erfüllt. [nach IEEE 610]
Der Grad, in dem ein Satz inhärenter Merkmale Anforderungen erfüllt.
[ISO 9000:2000]. Dazu gehören laut DIN-ISO 9126-1, 2001 :
Funktionalität
Effizienz
Zuverlässigkeit
Änderbarkeit
Benutzbarkeit
Übertragbarkeit
V 3.0 - 11 / 61
mehr im Modul 2:
SW-Lebenszyklus
T-Systems · PDC Test · 2011
12. Folie 12
1ISTQB Certified Tester
Foundation Level
Die Suche nach Vertrauen
Hoch
Wenige Fehler
Viele Fehler
Niedrig
Software-Qualität
Wenige Fehler
Hoch
TestQualität
Niedrig
V 3.0 - 12 / 61
Wenige Fehler
Quelle: Grove Consultants, UK
T-Systems · PDC Test · 2011
13. Folie 13
1ISTQB Certified Tester
Foundation Level
Unterschiedliche Herangehensweisen
Testen kann auf zweierlei Arten angegangen werden ...
„Positiv“ = Traditionell
„Negativ“ = Besser*
System tut, was es soll
System tut nicht,
was es nicht soll
z.B. „Programmvorführung“
System tut, was es nicht soll
System tut nicht, was es soll
Das System arbeitet
Das System fällt aus
Schnellster
Erfolg durch
Die einfachen Tests zuerst
Die härtesten Tests zuerst
Ergebnis
Fehlerzustände bleiben im
System
Es bleiben weniger
Fehlerzustände
im System
Hauptziel
Erfolg heisst
z.B. „Fehler finden“
* Aber nicht vergessen! Testen ist grundsätzlich positiv für die SW-Qualität.
V 3.0 - 13 / 61
T-Systems · PDC Test · 2011
14. Folie 14
1ISTQB Certified Tester
Foundation Level
Wie erzeuge ich Vertrauen?
Der Zweck des Testens ist es,
Vertrauen aufzubauen
Das beste Vorgehen beim
Testen: „Fehler finden“
„Das Test
Paradoxon“
Fehler finden
zerstört Vertrauen
Der Zweck des Testens ist es,
Vertrauen zu zerstören
Der beste Weg Vertrauen aufzubauen ist, Vertrauen zu zerstören!
V 3.0 - 14 / 61
T-Systems · PDC Test · 2011
15. Folie 15
1Vertrauen – ein Langzeiteffekt
ISTQB Certified Tester
Foundation Level
Vertrauen
Fehler werden gefunden
Trend
Zeit
V 3.0 - 15 / 61
T-Systems · PDC Test · 2011
16. Testen als Quelle von Prozessverbesserung
1Testen als Quelle von
Prozessverbesserung
ISTQB Certified Tester
Foundation Level
Aus Fehlern vergangener Projekte lernen
Ursachen der Fehlerzustände verstehen
Entwicklungsprozess gezielt verbessern
Vorbeugende Qualitätssteigerung zukünftiger Systeme
Testen ist im SW-Entwicklungszyklus integriert, wie
Entwicklungsstandards
Training
Fehlerursachenanalyse (Root Cause Analysis)
V 3.0 - 16 / 61
T-Systems · PDC Test · 2011
17. Wieviel testen ist genug?
1Wieviel testen ist genug?
Es ist „genug“ getestet,
ISTQB Certified Tester
Foundation Level
Ihre Meinung?
1. wenn wir das durchgeführt haben,
was wir geplant haben.
Vielleicht muss man vorher
die Tests beenden.
2. wenn der Nutzer zufrieden ist.
Der Anwender kann nicht alle
Qualitäten des Programms bewerten.
3. wenn wir den Beweis haben,
dass das System fehlerfrei ist.
„Fehlerfreiheit“ kann nicht
bewiesen werden.
4. wenn alles getestet ist, (d.h.
eigentlich nie, denn „man kann
nie genug testen“).
Nicht praktikabel und zu teuer.
5. Dies ist abhängig von den Risiken,
die wir für unser Software-System
abgeschätzt haben.
V 3.0 - 17 / 61
T-Systems · PDC Test · 2011
18. Das Risiko steuert den Testaufwand
1Das Risiko steuert den Testaufwand
ISTQB Certified Tester
Foundation Level
G Risiko: Ein Faktor, der zu negativen Konsequenzen in der Zukunft führen
könnte; gewöhnlich ausgedrückt durch die Eintrittswahrscheinlichkeit und
das Schadensausmaß.
Risiko
mehr im Modul 5:
Testmanagement
V 3.0 - 18 / 61
T-Systems · PDC Test · 2011
19. Testen liefert Information über die Software
1ISTQB Certified Tester
Foundation Level
Welche Risiken sind (noch) vorhanden?
Fundierte Entscheidung für die Freigabe der SW
Übergang in die nächste Entwicklungsstufe
Übergang in den Betrieb / an den Kunden
Quality Gate
Entwicklung
Quality Gate
Test
Quality Gate
Abnahme
Produktion
Bemerkung: eine Parallelisierung Entwicklung/Test könnte je nach Lebenszyklusmodell verwendet werden
(siehe Modul 2, „Testen im Lebenszyklus“)
V 3.0 - 19 / 61
T-Systems · PDC Test · 2011
20. Testen liefert andere Information
1Testen liefert andere Information
Wie gut ist
die Software?
Test
ISTQB Certified Tester
Foundation Level
Wie gut ist
der
Testprozess?
Wie gut ist der
Enwicklungsprozess?
Die Information kann verwendet werden, um Verbesserungen einzuleiten.
V 3.0 - 20 / 61
T-Systems · PDC Test · 2011
21. Folie 21
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Softwaretesten ist notwendig
Was ist Softwaretesten?
Sieben Grundsätze des Softwaretestens
Fundamentaler Testprozess
Psychologie des Testens
Ethische Leitlinien
V 3.0 - 21 / 61
T-Systems · PDC Test · 2011
22. Testen und Prüfung im Vergleich
G1
ISTQB Certified Tester
Foundation Level
Testen (Wiederholung) :
Der Prozess, der aus allen Aktivitäten des Lebenszyklus besteht
(sowohl statisch als auch dynamisch), die sich mit der Planung,
Vorbereitung und Bewertung eines Softwareprodukts und
dazugehöriger Arbeitsergebnisse befasst. Ziel des Prozesses ist
sicherzustellen, dass diese allen festgelegten Anforderungen
genügen, dass sie ihren Zweck erfüllen und etwaige Fehlerzustände
zu finden.
Prüfung (nicht mehr im Glossar) :
1. Tätigkeit wie Messen, Untersuchen, Ausmessen von einem oder
mehreren Merkmalen einer Einheit (Prüfobjekt) sowie Vergleichen mit
festgelegten Forderungen, um festzustellen, ob Konformität für jedes
Merkmal erzielt ist.
2. Oberbegriff für alle analytischen Qualitätssicherungsmaßnahmen
unabhängig von Methode und Prüfobjekt.
V 3.0 - 22 / 61
T-Systems · PDC Test · 2011
23. Ist Testen „nur“ das Testausführen?
1V 3.0 - 23 / 61
ISTQB Certified Tester
Foundation Level
zusätzlich das Prüfen
von Dokumenten,
statische Analyse
T-Systems · PDC Test · 2011
24. Warum testen wir?
1Warum testen wir?
ISTQB Certified Tester
Foundation Level
Wir wollen …
Wir können nicht …
Fehler finden
Beweisen, dass die Software
korrekt oder fehlerfrei ist
(Gesamt-)Kosten reduzieren
Vertrauen in das System aufbauen
Zeigen, dass die Anforderungen
erfüllt werden
Zeigen, dass der Bedarf des
Anwenders getroffen wird
Informationen zur
Entscheidungsfindung liefern
Softwarequalität etablieren
Fehlerwirkungen vorbeugen
Informationen bekommen, um
Prozessverbesserungen zu
initiieren (Test, Entwicklung)
V 3.0 - 24 / 61
T-Systems · PDC Test · 2011
25. Vorteile des frühen Testentwurfs*
1Vorteile des frühen Testentwurfs*
ISTQB Certified Tester
Foundation Level
Beim Testentwurf findet man Fehlerzustände ....
Wann im SW EntwicklungsProzess werden
Fehlerzustände eingebaut
Fehlende oder fehlerhafte Anforderungen
Unklare Designvorgaben
Fehlervermeidung durch
verbesserte Designqualität
Früh entdeckte Fehlerzustände sind
mit weniger Aufwand korrigierbar
Die Testbarkeit der
Vorgaben wird überprüft
Der Testentwurf kann durch
Reviews verbessert werden
Der Test liegt weniger lange auf dem kritischen Pfad
Quelle: Ed Kit „Software testing in the real world“,1998
Früher Testentwurf hilft, Qualität zu entwickeln und
vermeidet die Fortpflanzung von Fehlerzuständen.
* weiteres zum Thema Testentwurf auf Seite 44
V 3.0 - 25 / 61
T-Systems · PDC Test · 2011
26. Das Testen kann verschiedene Ziele haben
1Das Testen kann verschiedene Ziele haben
Test
Typische Testziele
Wartungstest
Erhalt der
Softwarequalität
Abnahmetest
Vertrauen aufbauen
Operationale
Tests
Nicht-funktionale
Qualitätsmerkmale
bewerten
Systemtest
Fehler finden im
funktionalen & nicht-funktionalen
Systemverhalten
Integrationstest
Fehlerzustände in
Schnittstellen finden
Komponententest
Fehlverhalten der
Komponentenfunktion
V 3.0 - 26 / 61
ISTQB Certified Tester
Foundation Level
G
Testziel: Ein Grund oder
Vorhaben für den Entwurf
und die Ausführung
von Tests.
Tests (dynamisch
und statisch) werden
als Mittel zur Erreichung
der Testziele eingesetzt.
T-Systems · PDC Test · 2011
27. Testen, Debuggen, Prozessverbesserung
1Testen, Debuggen, Prozessverbesserung
ISTQB Certified Tester
Foundation Level
Implementierung
Feedback
Testen
Durch
kontinuierliche
Verbesserung
des Softwareentwicklungs- und
Testprozesses werden
Fehlhandlungen in zukünftigen
Testzyklen reduziert.
Fehlerwirkung wird während
der Testdurchführung durch
den Tester festgestellt.
Debuggen
Fehlerwirkung
wird vom Entwickler
analysiert und der
Fehlerzustand anschließend
behoben.
V 3.0 - 27 / 61
T-Systems · PDC Test · 2011
28. Folie 28
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Softwaretesten ist notwendig
Was ist Softwaretesten?
Sieben Grundsätze des Softwaretestens
Fundamentaler Testprozess
Psychologie des Testens
Ethische Leitlinien
V 3.0 - 28 / 61
T-Systems · PDC Test · 2011
29. Die 7 Grundsätze des Testens*
1Die 7 Grundsätze des Testens*
ISTQB Certified Tester
Foundation Level
*Siehe auch LP 2010, Kap. 1.3
Testen zeigt die Anwesenheit von Fehlerzuständen
Erschöpfendes** Testen ist nicht möglich
Mit dem Testen frühzeitig beginnen
Häufung von Fehlern ("Fehlercluster")
Wiederholungen haben keine Wirksamkeit
Testen ist abhängig vom Umfeld
Trugschluss: Keine Fehler bedeutet ein brauchbares
System
** Im Lehrplan „Vollständiges Testen“
Im Glossar „Erschöpfendes Testen“
V 3.0 - 29 / 61
T-Systems · PDC Test · 2011
30. 1. Anwesenheit von Fehlerzuständen
11. Anwesenheit von Fehlerzuständen
ISTQB Certified Tester
Foundation Level
Testen kann Fehlerfreiheit nicht beweisen
Testen weist das Vorhandensein von Fehlerzuständen
nach
Ausreichendes Testen reduziert die Wahrscheinlichkeit für
unentdeckte Fehlerzuständen
V 3.0 - 30 / 61
T-Systems · PDC Test · 2011
31. 2. Erschöpfendes Testen
12. Erschöpfendes Testen
ISTQB Certified Tester
Foundation Level
Tests sind immer Stichproben
Testaufwand ist nach Risiko und Priorität zu steuern*
G „Erschöpfendes Testen“ Testvorgehensweise,
4 Plattformen
bei der die Testsuite alle Kombinationen von
Eingabewerten und Vorbedingungen umfasst.
3 Browser
In diesem Beispiel führt vollständiges Testen zu
4 x 3 x 7 x 4 x 3 x 10 x 10 = 100.800 Tests
Jede Maske:
7 Masken
• 4 Menüs
• 3 Optionen pro Menü
• 10 Felder
• Jeweils 10 mögliche Werte
Falls jeder Test nur 1 Minute dauert,
benötigen wir 10 Wochen für erschöpfendes Testen!
V 3.0 - 31 / 61
* mehr im Modul 5:
Testmanagement
T-Systems · PDC Test · 2011
32. 3. Frühzeitig beginnen
13. Frühzeitig beginnen
ISTQB Certified Tester
Foundation Level
Testaktivitäten sollen im SW-Lebenszyklus so früh wie
möglich beginnen
Fehlerzustände werden frühzeitig erkannt
Die Behebung der Fehlerzustände ist billiger
Kosten
Reviews auf
Spezifikation
Produktion
Test
Anforderungen
Design
Entwicklung
Lebenszyklus
V 3.0 - 32 / 61
T-Systems · PDC Test · 2011
33. 4. Häufung von Fehlern
14. Häufung von Fehlern
ISTQB Certified Tester
Foundation Level
Eine Gleichverteilung von Fehlerzuständen im Testobjekt
Wahrscheinlichkeit für die
Existenz weiterer Fehler
ist nicht gegeben
Oft finden sich in wenigen Teilen des Testobjekts die
meisten Fehlerzustände
Wo ein Fehlerzustand ist, sind meist noch mehrere
Dieser Umstand ist bei der
Teststrategie und der
Testdurchführung zu
berücksichtigen
Beispiel: IBM OS/370,
47% der Fehlerzustände in 4% der Module
Quelle: G.J. Myers,
„Methodisches Testen
von Programmen“
Zahl der gefundenen Fehler
V 3.0 - 33 / 61
T-Systems · PDC Test · 2011
34. 5. Wirkungslose Wiederholungen
15. Wirkungslose Wiederholungen
ISTQB Certified Tester
Foundation Level
Mehrere gleichartige Testfälle bringen keine
unterschiedlichen Ergebnisse
Für effektives Testen müssen die Testsuiten regelmäßig
auf Relevanz und Notwendigkeit überprüft werden
Bislang ungetestete Bereiche und neue Konstellationen
müssen berücksichtigt werden, um neue Fehlerzustände
festzustellen
Wiederholungen der immer gleichen Testfälle führen zu
keinen neuen Erkenntnissen
V 3.0 - 34 / 61
T-Systems · PDC Test · 2011
35. 6. Abhängigkeit vom Umfeld
1ISTQB Certified Tester
Foundation Level
Keine zwei Systeme sind auf genau dieselbe Art zu testen
Intensität der Tests und Endekriterien sind jeweils zu
prüfen und festzulegen und den Testergebnissen
entsprechend anzupassen
Sicherheitsrelevante Anwendungen sind anders zu prüfen
als E-Commerce-Systeme
V 3.0 - 35 / 61
T-Systems · PDC Test · 2011
36. 7. Keine Fehler – brauchbares System?
1ISTQB Certified Tester
Foundation Level
Sind alle Fehlerzustände nach Ende der Tests behoben?
Auch wenn „ja“, können wir nicht unbedingt davon
ausgehen, dass das System die Erwartungen und
Vorstellungen des Nutzers erfüllt.
Vorbeugende Maßnahmen einleiten, z.B.
Frühzeitiges Einbeziehen des späteren Anwenders
Validierung von Systemspezifikationen durch den Anwender
Prototyping
Iterative Entwicklungsmodelle* verwenden
* mehr im Modul 2:
Lebenszyklus
V 3.0 - 36 / 61
T-Systems · PDC Test · 2011
37. Folie 37
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Softwaretesten ist notwendig
Was ist Softwaretesten?
Sieben Grundsätze des Softwaretestens
Fundamentaler Testprozess
Psychologie des Testens
Ethische Leitlinien
V 3.0 - 37 / 61
T-Systems · PDC Test · 2011
38. Der fundamentale Testprozess
1Der fundamentale Testprozess
ISTQB Certified Tester
Foundation Level
Testrealisierung und
-durchführung
Start
Testplanung
und -steuerung
Abschluss der
Testaktivitäten
Testanalyse
und -entwurf
Bewertung von
Ausgangskriterien
und Bericht
Flußrichtung
vorwärts
rückwärts
V 3.0 - 38 / 61
T-Systems · PDC Test · 2011
Ende
39. Testplanung und -steuerung
1Testplanung und -steuerung
ISTQB Certified Tester
Foundation Level
Planung
Überprüfen und Festlegen des Aufgabenumfangs
Definition der Testziele
Festlegen der Testaktivitäten
Ggf. Fortschreiben der Pläne aufgrund von Feedback aus der
Steuerungsaktivität
Steuerung
Fortlaufende Tätigkeit
Plan-/Ist-Vergleich und Abweichungsfeststellung
Gegebenenfalls Einleiten von Korrekturmaßnahmen
Statusbericht
Metriken zur Unterstützung sind notwendig
Feedback an die Testplanung
V 3.0 - 39 / 61
T-Systems · PDC Test · 2011
40. Aufgaben der Testplanung*
1Aufgaben der Testplanung*
ISTQB Certified Tester
Foundation Level
*Siehe auch LP 2010, Kap. 5.2
Bestimmen des Umfangs und der Risiken des Testens
Identifikation der Testziele
Bestimmen des Testvorgehens (Techniken, Testobjekte,
Überdeckung, Teams, Testmittel)
Festlegen der benötigten Testressourcen
Implementierung der Testmethode und/oder der im Vorfeld
festgelegten Teststrategie
Terminieren der Testanalyse und -spezifikation
Terminieren der Testimplementierung, Testdurchführung und
Testauswertung
Bestimmen der Ausgangskriterien
Aufnahme der Aufgabenergebnisse
in ein Mastertestkonzept
mehr im Modul 5:
Testmanagement
V 3.0 - 40 / 61
T-Systems · PDC Test · 2011
41. Testplanung: Definitionen
1Testplanung: Definitionen
ISTQB Certified Tester
Foundation Level
G Teststrategie:
Abstrakte Beschreibung der vorgesehenen Teststufen und
der Art und Weise, wie innerhalb dieser Teststufen
vorzugehen ist, für eine Organisation oder ein Programm gültig für ein oder mehrere Projekte.
G Testvorgehensweise:
Die Umsetzung einer Teststrategie in einem spezifischen
Projekt. Typischerweise enthält sie die getroffenen
Entscheidungen zur Erreichung der (Test-)Projektziele, die
Ergebnisse der Risikoanalyse, die Testentwurfsverfahren,
die Ausgangskriterien und die geplanten
durchzuführenden Tests (Testarten).
V 3.0 - 41 / 61
T-Systems · PDC Test · 2011
42. Testplanung: Definitionen
1Testplanung: Definitionen
ISTQB Certified Tester
Foundation Level
* Quelle: Gilb Tom, Graham Dorothy,
Software Inspection, Addison-Wesley, 1993
G Ausgangskriterien:
Die Menge der abgestimmten generischen und spezifischen
Bedingungen, die von allen Beteiligten für den Abschluss eines
Prozesses akzeptiert wurden. Ausgangsbedingungen für eine
Aktivität verhindern es, dass die Aktivität als abgeschlossen
betrachtet wird, obwohl Teile noch nicht fertig sind [nach Gilb und
Graham*].
Anmerkung: Ausgangsbedingungen werden in Berichten
referenziert und zur Planung der Beendigung des Testens
verwendet.
Früher auch: Testendekriterium, Ausgangsbedingung,
Endebedingung, Nachbedingung
V 3.0 - 42 / 61
T-Systems · PDC Test · 2011
43. Aufgaben der Teststeuerung
1Aufgaben der Teststeuerung
ISTQB Certified Tester
Foundation Level
Messen und Analysieren der Resultate
Überwachen und Dokumentieren von Testfortschritt,
Testabdeckungen und der Ausgangskriterien
Anstoß von Korrekturmaßnahmen
Treffen von Entscheidungen
Analysieren und Bewerten von testspezifischen
Projektrisiken
Definieren von Abwehr- und Notfallmaßnahmen
mehr im Modul 5:
Testmanagement
V 3.0 - 43 / 61
T-Systems · PDC Test · 2011
44. Testanalyse und -entwurf
1Testanalyse und -entwurf
ISTQB Certified Tester
Foundation Level
Aus den allgemeinen Testzielen werden konkrete
Testbedingungen hergeleitet
Erstellung der logischen Testfälle
Aufgaben:
Bewertung der Testbarkeit der Anforderungen
Review der Testbasis
Testobjektanalyse
Identifizierung der Testbedingungen
Identifizierung der Testdaten
Testentwurf
(Synonym: Testdesign)
Entwurf der Testumgebungsorganisation
Identifikation der benötigten Infrastruktur und Werkzeuge
Sicherstellen der Rückverfolgbarkeit
mehr im Modul 4:
zwischen Testbasis und Testware, insb. Testfälle
Testentwurfsverfahren
V 3.0 - 44 / 61
T-Systems · PDC Test · 2011
45. Testanalyse und -entwurf: Definitionen
1Testanalyse und -entwurf: Definitionen
ISTQB Certified Tester
Foundation Level
G Testbasis:
Alle Dokumente, aus denen die Anforderungen ersichtlich werden,
die an eine Komponente oder ein System gestellt werden, bzw. die
Dokumentation, auf der die Herleitung oder Auswahl der Testfälle
beruht.
Wenn ein Dokument nur über das formale Änderungsverfahren
geändert werden kann, handelt es sich um eine festgelegte
Testbasis [nach TMap®].
V 3.0 - 45 / 61
T-Systems · PDC Test · 2011
46. Testrealisierung und –durchführung (1)
1ISTQB Certified Tester
Foundation Level
Testrealisierung
Testbedingungen und logische Testfälle werden in konkrete Testfälle
und Testmittel (z.B. Spezifikationen, Tools) umgesetzt.
Testsystem (Testumgebung) wird zur Verfügung gestellt (d.h. alle
Hardware- und Softwarekomponenten die notwendig sind, um
Testfälle durchzuführen).
Aufgaben:
Erstellung und Priorisierung der Testfälle, Szenarien
Erstellung Testdaten: Eingabe- und Zustandswerte für ein
Testobjekt und die vorausgesagten Werte nach Ausführung des
betreffenden Testfalls.
Vorbereitung Testrahmen und Skripterstellung (optional)
Zusammenstellung von Testsuiten / Testsequenzen (logische
Gruppierung) zu Testabläufen
Aufsetzen und Konfiguration des Testsystems
V 3.0 - 46 / 61
T-Systems · PDC Test · 2011
47. Testrealisierung und –durchführung (2)
1ISTQB Certified Tester
Foundation Level
Testdurchführung
Aufgaben:
Ausführen der Testfälle (manuell / automatisiert)
Protokollierung der Testergebnisse in einem Testprotokoll
Vergleich Ist-Ergebnisse/vorausgesagte Ergebnisse
Fehlerwirkungen und Abweichungen festhalten
Ggf. Durchführen von Fehlernachtest / Regressionstest
V 3.0 - 47 / 61
T-Systems · PDC Test · 2011
48. Testrealisierung und -durchführung: Definitionen
1Testrealisierung und -durchführung: Definitionen
ISTQB Certified Tester
Foundation Level
G
Testbedingung / Testkriterium / Testanforderung:
Eine Einheit oder ein Ereignis, z.B. eine Funktion, eine Transaktion, ein
Feature, ein Qualitätsmerkmal oder ein strukturelles Element einer
Komponente oder eines Systems, welche durch einen oder mehrere
Testfälle verifiziert werden kann.
G
Testmittel: (engl: Testware)
Alle Dokumente und ggf. Werkzeuge, die während des Testprozesses
erstellt bzw. benutzt werden und die erforderlich sind, die Tests zu planen,
zu entwerfen oder auszuführen.
Dazu gehören: Skripte, Eingabedaten, erwartete Ergebnisse, Skripte zum
Wiederherstellen eines definierten Ausgangszustands, Dateien,
Datenbanken, Umgebungen und weitere zusätzliche Software- und
Dienstprogramme, die für den Test verwendet werden [Fewster, M. &
Graham, D. ,1999, Software Test Automation].
G
Testsuite / Testsequenz:
Aneinanderreihung mehrerer Testfälle für den Test einer Komponente oder
eines Systems, wobei Nachbedingungen des einen Tests als
Vorbedingungen des folgenden Tests genutzt werden können.
V 3.0 - 48 / 61
T-Systems · PDC Test · 2011
49. Bewertung von Ausgangskriterien und Bericht
1Bewertung von Ausgangskriterien und Bericht
ISTQB Certified Tester
Foundation Level
Ergebnisse der Testdurchführung werden mit den
definierten Zielen verglichen
Wird in jeder Teststufe* durchgeführt
Aufgaben:
Auswertung der Testprotokolle hinsichtlich der Ausgangskriterien
Entscheidung, ob die Kriterien erreicht sind oder mehr Tests
durchgeführt werden müssen
Erstellung des Testabschlussberichts für die Stakeholder
G
*Eine Teststufe ist eine Gruppe von Testaktivitäten, die gemeinsam
ausgeführt und verwaltet werden. Teststufen sind mit Zuständigkeiten
in einem Projekt verknüpft. Beispiele für Teststufen sind der
Komponententest, der Integrationstest, der Systemtest und der
Abnahmetest [nach TMap®].
*auch im Modul 2:
Lebenszyklus
V 3.0 - 49 / 61
T-Systems · PDC Test · 2011
50. Abschluss der Testaktivitäten
1ISTQB Certified Tester
Foundation Level
Daten von abgeschlossenen Testphasen werden
gesammelt und konsolidiert
Mögliche Zeitpunkte: nach SW-Release, nach Erreichen
eines Meilensteins, nach Testende oder Testabbruch
Aufgaben:
Kontrolle, welche der geplanten Arbeitsergebnisse geliefert
wurden
Schließen der Fehler-/Abweichungsberichte (wo möglich) /
Erstellen von Änderungsanforderungen
Dokumentation der Abnahme
Dokumentation und Archivierung der Testmittel, Testumgebung,
Infrastruktur für Wiederverwendung
Übergabe der Testmittel an die Wartungsorganisation
„Lessons Learned“ zur Erhöhung der Testreife für folgende
Projekte
V 3.0 - 50 / 61
T-Systems · PDC Test · 2011
51. Folie 51
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Softwaretesten ist notwendig
Was ist Softwaretesten?
Sieben Grundsätze des Softwaretestens
Fundamentaler Testprozess
Psychologie des Testens
Ethische Leitlinien
V 3.0 - 51 / 61
T-Systems · PDC Test · 2011
52. Das Leben eines Testers
1Das Leben eines Testers
Die destruktive Seite
Die konstruktive Seite
Testen ist ein destruktiver Prozess;
eine besondere Mentalität ist
erforderlich
Tester werden oft als Überbringer
„schlechter“ Nachrichten gesehen
Tester erleiden meist den größten
Druck
Tester sind stark auf andere
angewiesen, was ihre
Informationen betrifft
G
ISTQB Certified Tester
Foundation Level
Tester:
Eine sachkundige Fachperson,
die am Testen einer Komponente
oder eines Systems beteiligt ist.
V 3.0 - 52 / 61
Testen kann einen konstruktiven
Einfluss auf die Qualität der
gelieferten SW haben
Nur Tester können die Zahlen
liefern, die notwendig sind, um
Entscheidungen zu treffen
Tester benötigen sehr
umfangreiche „up-to-date“
Fähigkeiten
Testen kann eine dankbare
Aufgabe sein
Die Rolle „Tester“ wird immer mehr
als echter „Beruf“ respektiert.
Tester stehen „Peer-to-Peer“ zu
den Entwicklern.
T-Systems · PDC Test · 2011
53. Die Rechte des Testers I
1Die Rechte des Testers I
ISTQB Certified Tester
Foundation Level
Grundrechte
Präzise Information
Über den Fortschritt der SW, die getestet wird
Über Änderungen in der SW, die den Test beeinflussen
Einblick in die SW aus Entwicklersicht
Welche Teile sind schwer zu testen?
Welche Teile weisen bisher viele Fehlerzustände auf?
Wo sind Fehlerwirkungen schwer zu reproduzieren?
Der gelieferte Code wurde auf einen abgestimmten
Standard hin getestet
Als Test-Spezialist geachtet werden
Zusätzliche Tests vorschlagen, die bisher noch
nicht geplant waren
V 3.0 - 53 / 61
T-Systems · PDC Test · 2011
54. Die Rechte des Testers II
1Die Rechte des Testers II
ISTQB Certified Tester
Foundation Level
Grundrechte
Gefundene Fehler müssen ernst genommen werden
Beteiligung beim Prüfen von Spezifikationen hinsichtlich
Auslassungen, Inkonsistenzen, Unklarheiten,
Mehrdeutigkeiten, usw.
Reviews zu Dokumenten, auf denen das Testen basiert
Kommentare zu Themen, die nicht zum Testumfeld gehören
Informationen bzgl. übersehener Fehlerzustände
bekommen
Von der Entwicklung wird auch für die Überprüfung nicht
reproduzierbarer Fehlerwirkungen ein gewisser Aufwand
betrieben
Vorhersagen über zukünftige Fehlerzahlen treffen
Vorschläge für Testprozessverbesserungen machen
V 3.0 - 54 / 61
T-Systems · PDC Test · 2011
55. Die Verantwortung des Testers I
1Die Verantwortung des Testers I
ISTQB Certified Tester
Foundation Level
Berichte Fehler objektiv, positiv und faktenbasiert
Trivialisiere nicht
Prüfe, dass die Tests richtig durchgeführt wurden,
bevor ein Ereignis als Fehler berichtet wird
Überschreite keine Kompetenzen bzgl. Release-
Entscheidungen
Berichte über SW-Qualität und bestehende
Risiken
Teste die SW und nicht den Programmierer
Zusammenarbeit statt Streiten!
V 3.0 - 55 / 61
T-Systems · PDC Test · 2011
56. Die Verantwortung des Testers II
1Die Verantwortung des Testers II
ISTQB Certified Tester
Foundation Level
Halte Dich an Testpläne, Spezifikationen, Skripte bis
das geplante Testen abgeschlossen ist
Kommunikationsfähigkeiten üben und im Projekt
praktizieren
Stelle sicher, dass man einander versteht!
Sachliche Kommunikation und Rückmeldung bzgl. Problemen
Gilt auch für den Testmanager
Die Ziele des Testens kommunizieren, z.B.
Fehler finden
Information über die SW-Qualität bereitstellen
Den Mehrwert des Testens transparent machen, z.B.
Zeit/Geld sparen
Risiken verringern
V 3.0 - 56 / 61
T-Systems · PDC Test · 2011
57. Unabhängiges Testen*
1Unabhängiges Testen*
ISTQB Certified Tester
Foundation Level
Wenn man die eigene Arbeit testet …
… findet man wahrscheinlich höchstens die Hälfte der
Fehlerzustände. (Blindheit gegenüber eigenen Fehlern)
... ist das Testen von den gleichen Annahmen, Interpretationen und
Denkprozessen beeinflusst.
Man sieht, was man erwartet, und nicht, was wirklich da ist.
… will man, dass die Tests erfolgreich sind.
Der fundamentale Testansatz, Fehlerzustände finden zu wollen, wird
dadurch umgangen, dass man eine emotionale Bindung an die eigene
Arbeit hat.
G
* Das Trennen der Verantwortungen von Analyse/Entwicklung und Test, um
unvoreingenommenes Testen zu fördern [nach DO-178b].
V 3.0 - 57 / 61
T-Systems · PDC Test · 2011
58. Stufen unabhängigen Testens
UnabhängigkeitISTQB Certified Tester
Foundation Level
1
Testentwurf durch …
Geringer Grad
den Software-Autor
Personen-Unabhängigkeit
jemanden aus dem Projekt Team,
jedoch nicht den SW-Autor
Team-Unabhängigkeit
jemanden aus einem anderen
Team oder einer anderen Abteilung
Organisatorische
Unabhängigkeit
jemanden aus einer anderen Firma
mehr im Modul 5:
Testmanagement
V 3.0 - 58 / 61
T-Systems · PDC Test · 2011
59. Folie 59
12
3
4
5
6
ISTQB Certified Tester
Foundation Level
Grundlagen
Softwaretesten ist notwendig
Was ist Softwaretesten?
Sieben Grundsätze des Softwaretestens
Fundamentaler Testprozess
Psychologie des Testens
Ethische Leitlinien
V 3.0 - 59 / 61
T-Systems · PDC Test · 2011
60. Ethische Leitlinien*
1Ethische Leitlinien*
ISTQB Certified Tester
Foundation Level
*Siehe auch LP 2010, Kap. 1.6
ÖFFENTLICHKEIT: Das Verhalten zertifizierter Softwaretester soll nicht im
Widerspruch zum öffentlichen Interesse stehen.
KUNDE UND ARBEITGEBER: Das Verhalten zertifizierter Softwaretester soll den
Interessen ihrer Kunden und Arbeitgeber entsprechen und dabei nicht im Widerspruch
zum öffentlichen Interesse stehen.
PRODUKT: Zertifizierte Softwaretester sollen sicherstellen, dass die Arbeitsergebnisse,
die sie liefern (für die von ihnen getesteten Produkte und Systeme), höchste fachliche
Anforderungen erfüllen.
URTEILSVERMÖGEN: Zertifizierte Softwaretester sollen bei ihrer professionellen
Beurteilung aufrichtig und unabhängig sein.
MANAGEMENT: Zertifizierte Softwaretestmanager und -testleiter sollen eine ethische
Haltung beim Management des Softwaretestens haben und fördern.
BERUFSBILD: Zertifizierte Softwaretester sollen Integrität und Ansehen ihres Berufs
fördern und dabei nicht im Widerspruch zum öffentlichen Interesse stehen.
KOLLEGEN: Zertifizierte Softwaretester sollen sich ihren Kolleginnen und Kollegen
gegenüber fair und hilfsbereit verhalten und die Kooperation mit Softwareentwicklern
fördern.
PERSÖNLICH: Zertifizierte Softwaretester sollen sich in ihrem Beruf lebenslang fortund weiterbilden und eine ethische Haltung in ihrer Berufsausübung vertreten
V 3.0 - 60 / 61
T-Systems · PDC Test · 2011
61. Zusammenfassung: Grundlagen
1Zusammenfassung: Grundlagen
ISTQB Certified Tester
Foundation Level
Wir testen, weil wir Fehler machen und komplexe
Software-Systeme das Leben bestimmen
Testen ist die stichprobenartige Ausführung eines
Testobjekts, aber nicht nur die Ausführung
Es gibt sieben allgemeine Grundsätze
des Softwaretestens: …
Der fundamentale Testprozess hat fünf
definierte Aktivitäten: …
Auch psychologische Einflussfaktoren müssen
berücksichtigt werden
In Anlehnung an den Ethik-Kodex von ACM und IEEE
stellt das ISTQB® ethischen Leitlinien auf
V 3.0 - 61 / 61
T-Systems · PDC Test · 2011
62. Änderungsverzeichnis
1Anhang A: Klassifizierung von Lernzielen
ISTQB Certified Tester
Foundation Level
Im Lehrplan (Kapitel 9, Anhang B) wird eine Taxonomie für Lernziele
beschrieben.
Taxonomiestufe 1: sich erinnern (K1)
Der Lernende ruft im Gedächtnis gespeicherte Information (z.B. Begriffe, isolierte Fakten,
Abfolgen, Prinzipien, Mittel und Wege) ab.
Typische beobachtbare Leistungen sind erkennen, nennen, bezeichnen.
Taxonomiestufe 2: Verstehen (K2)
Der Lernende verknüpft oder transformiert Informationen.
Typische beobachtbare Leistungen sind beschreiben, zusammenfassen, vergleichen,
klassifizieren, begründen, erklären.
Taxonomiestufe 3: anwenden (K3)
Der Lernende überträgt erworbenes Wissen auf gegebene neue Situationen oder wenden
sie zur Problemlösung an.
Typische beobachtbare Leistungen sind ausführen, anwenden, beurteilen, ermitteln,
analysieren, zusammenfassen, vergleichen, klassifizieren, begründen, erklären.
Taxonomiestufe 4: analysieren (K4)
Der Lernende kann zum besseren Verständnis die Informationen bezüglich eines
Vorgehens oder Ablaufs in ihre Einzelbestandteile aufschlüsseln und zwischen
Sachverhalten und abgeleiteten Schlussfolgerungen unterscheiden.
Typische beobachtbare Leistungen sind analysieren, organisieren, Zusammenhänge
erkennen, integrieren, kurz skizzieren, zergliedern, strukturieren, zuordnen, zerlegen,
differenzieren , unterschiedlich behandeln, unterscheiden, fokussieren, auswählen
Jeder Inhalt wird entsprechend den zugeordneten Lernzielen geprüft.
V 3.0 - 63 / 61
T-Systems · PDC Test · 2011