close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

Haben wir das richtige gebaut? Was ist ein Akzeptanztest? - SEN1

EinbettenHerunterladen
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
1
2
3
4
5
Akzeptanztests
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Validation and verification
Inspection and review
Review plan
debugging
Der Entwicklungsprozess
Test Strategie
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Classification Tree Method
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
1/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Haben wir das richtige gebaut?
Abbildung : Kommunikation zwischen Fachabteilung und Entwicklung
Bei der Kommunikation zwischen Fachabteilung und Entwicklung
findet ein Transfer aus einer Fachsprache in eine andere statt.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
2/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Was ist ein Akzeptanztest?
Bei der Auflieferung von maßgeschniederter Software findet
immer einen Akzeptanztest statt. Ziel des Akzeptanztests:
Gen¨ugt die Software den Bedingungen und W¨unsche des
Auftragsgeber?
Ist die Software geeignet f¨ur die produktive
Inbetriebnahme?
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
3/32
1
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Interessen des Auftragsgebers
Gew¨ahrleistungsbedingungen
Der Lieferant kann die Kosten der Korrektur berechnen, wenn
ein Fehler bei der Ausf¨
uhrung eines Akzeptanztest auftritt.
Nach Akzeptanz ist der Lieferant auf Grund dieser
Vereinbarung nicht gehalten die Fehler in der Software zu
korrigieren.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
4/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Interessen des Softwareentwicklers
Qualit¨at und Effizienz
Mittels eines gr¨
undlich ausgef¨
uhrten Akzeptanztests, werden
m¨ogliche Kosten f¨
ur Ausbesserungsarbeiten gespart.
Die Testperiode bietet eine gute Gelegenheit um die Qualit¨at
und Zuverl¨assigkeit der Software zu verbesseren.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
5/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Die Verhandlung
Unvolkommentheiten sind Fehler und Mangel oder das in
irgendeiner Art und Wiese Abweichen von der Spezifikation.
Je genauer die Spezifikationen sind, desto gr¨
oßer wird die
Chance das der Auftragsgeber M¨angel finden kann.
Der Auftragsgeber wird seine Anforderungen so genau wie
m¨oglich beschreiben wollen.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
6/32
2
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Inhalt des Akzeptanztests 1
Die Funktionalit¨at: Alle Aspekte des Verhalten und die
Ergebnisse nach der vereinbarten Spezifikationen.
Robustheit. Sinnvolles reagieren auf Fehleingabe, technische
Fehlsituationen und Benutzerfehler.
¨
Die Konversionsprozedur f¨
ur das Ubertragen
der Daten auf die
neue Software.
Bindung mit anderen Informationssysteme.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
7/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Inhalt des Akzeptanztest 2
Die Leistung
Die Benutzerfreundlichkeit
Die Qualit¨atsgarantien, wie Vereinbart
In der Informatik allgemein g¨angige Ausgangspunkte der
Qualit¨at und Tauglichkeit.
Die Dokumentation f¨
ur Verwalter und Benutzer.
Die Prozeduren f¨
ur manuelle T¨atigkeiten.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
8/32
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Wie f¨uhrt man den Test aus?
Richtet rechtzeitig den Testumgebung ein (Hardware,
Software, Dokumentation, Lizenzen und Arbeitsplatz).
Bestimme wer die Tests ausf¨
uhren wird.
Schreibe die konkreten Testszenarien, sobald die funktionelle
Spezifikationen vorhanden sind kann damit angefangen
werden.
Stelle sicher das es eine (tempor¨are) Verwaltung zur
Sammlung und Festlegung der Testergebnisse vorhanden ist.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
9/32
3
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Interessen
Inhalt des Akzeptanztests
Ausf¨
uhren der Tests
Validation and verification points
Arten von V & V
Software
Inspections
Requirements
specification
High level
design
Formal
specification
Detailed
design
Program
Program
testing
Prototype
Abbildung : Static and dynamic verification and validation.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
10/32
Inspection and review
Review plan
debugging
Validierung: Machen wird das richtige Produkt?
Ist ein allgemeinerer Teil
Machen wir was der Auftragsgeber m¨
ochte?
Verifikation: Machen wird das Produkt richtig?
Dynamisch testen heißt das Ausf¨
uhren der Software mit
Testdaten.
V&V sind statisch: Inspektionen und Reviews w¨ahrend aller
Phasen des Entwicklungsprozesses.
Validierungstests: Zeigen das die Software macht was der
Kunde m¨ochte. In punkto Leistung als auch Zuverl¨assigkeit.
Eine scharfe Grenze zwischen diese Bereiche ist nicht fest zu
legen.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
11/32
Inspection and review
Review plan
debugging
Inspection and review
Inspektion und review sind beides statische
Verifikationstechniken, deshalb muss das System nicht
ausgef¨
uhrt werden.
Inspektion ist die pr¨azisere Variante. Die sogenannte Fagan
Inspektion folgt einem strikten Protokoll, mit
unterschiedlichen Rollen f¨
ur die Teilnehmer w¨ahrend der
Inspektion.
Reviewen ist eine weniger strickte Methode. Trotzdem sollte
es nach einem Plan mit einem Ziel ausgef¨
uhrt werden.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
12/32
4
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Inspection and review
Review plan
debugging
Ziel eines Reviews
Genau wie andere Testtechniken, kann reviewen h¨
ochstens
Fehler aufdecken.
Die Arten der inhaltlichen Fehler, wonach gesucht werden soll
sind:
1
2
3
Unvolst¨andige oder fehlende Information.
Inkonsitenz oder Wiederspr¨
uche
Unklarheiten oder Vagheit.
Durch diese Mangel gibt es Wahlm¨oglichkeiten in die n¨achsten
Schritte, wodurch die Unsicherheit steigt.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Test
results
Specification
Locate
error
Design
error
repair
20. Februar 2014
13/32
Inspection and review
Review plan
debugging
Test cases
Retest
Program
Repair
error
Abbildung : Debugging process.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
14/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
V-Modell
Abbildung : Selbstverst¨andig erwarten wir das Kodieren und Testen Hand
in Hand gehen.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
15/32
5
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
V-Modell als Test und Entwicklungszyklus
In modernen Entwicklungsmethoden wird das V-Model oft
bevorzugt.
Das V-Modell fordert eine Abgleichung zwischen Spezifikation
auf der linken Seite und Verifikation/Validation auf der
rechten Seite, auf allen Ebenen der Entwicklung.
Bemerke das alle Schritte zu beide Beine des Vs Dokumente
erzeugen.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
16/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Inhalt Testplan
Organisation: Beschreibung wie der Test organisiert ist, wo die
Verantwortlichkeiten liegen und was die benutzten Mittel sind.
Kommunikation und Prozeduren: u.A. Prozeduren f¨
ur das
Beheben von Fehler, Versions-Verwaltung.
¨
Teststrategie: Uberblick
der Teststragtegie, Kriterien f¨
ur die
Akzeptanz der Tests und auf welcher Ebene getestet wird.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
17/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Inhalt Testplan 2
¨
Test Items: Uberblick
der Funktionen die getestet werden und
deren Priorit¨at.
Test Ergebnisse: Beschreibung der verwendete Produkte:
Eingaben, Testberichte, Infrastrukur und Fortschrittsberichte.
Testaktivit¨aten: Installation der Infrastruktur, schreiben von
Testskripte, die Ausf¨
uhrung des Tests, das
Fortschrittsmonitoring und das Erstellen der Testberichte.
Planung: Die tats¨achliche Planung der Softwaretestaktivit¨aten
und die benutzte Mittel.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
18/32
6
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Test Szenarien
Die konkreten Szenarien geh¨oren zu einem Use-case.
Manchmal meint man mit Testszenario ein Testprogramm,
d.h.: welche Tests und in welcher Reihenfolge werden sie
ausgef¨
uhrt.
Mann benutzt auch die sogenannte Testskripte, wenn bei
einer Testprozedur mit einem Softwaretool automatisch eine
Reihe von Tests ausgef¨
uhrt werden soll.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
19/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Test tools
Es gibt kommerzielle Produkte zum automatischen Testen,
aber es gibt auch ant in Kombination mit Junit. Eins von den
Frameworks ist Castor.
Es gibt mehr:..
(http://java-source.net/open-source/testing-tools): JUnit, Cactus,
Abbot (waar is Costello?), JUnitPerf, Jamelon, DbUnit, Mockrunner,
dbMonster, The Grinder, XMLUnit, jfcUnit, JTestCase, StrutsTestCase, jMock,
EasyMock, MockEJB, MockCreator, SQLUnit, Marathon, TestNG, Surrogate
Test framework, JTR Java Test Runner, TESTARE, MockLib, TagUnit,
TestGen4J, UISpec4J, Jacareto, Jemmy, DDTUnit, Mocquer,Mockito
sind alle Framworks zum oder zur Untersst¨
utzung des Testen.
Und die Liste ist noch nicht volst¨andig.
HOM/FHTeL
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
20/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Wie findet man Testdaten?
Man will selbstverst¨andlich alles testen!
Man kann nicht alle Werte testen!
Es gibt Methoden mit dem man eine beschr¨ankte doch
komplette Menge von Testdaten finden kan.
Grenzwerte und Extremwerten.
Bestimmen von Equivalenzklassen.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
21/32
7
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Ein- und Ausgabe Partitionen
invalid
invalid
invalid
invalid
valid
valid
valid
valid
valid
valid
valid
valid
system
output
output
output
output
output
output
output
output
Abbildung : Eingabe und Ausgabe kann mann verteilen in verschiedene
SEN1 Software Engineering 1
20. Februar 2014
Klassen.
HOM/FHTeL
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
22/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Beispiel equivalente Partitionierung
1
2
3
a
Mann sieht hier 4
Partitionen:
1
2
3
4
HOM/FHTeL
x <a
a≤x <b
b≤x <c
x ≥c
b
4
c
Partitionsequivalenz nimmt an, daß
jeder Wert in der Partition auf
gleicher Weise behandelt wird. Aber
auch die Grenzen verdienen
Aufmerksamkeit: Teste ob die
Grenzwerte nach den Regeln
behandelt werden geh¨
orend zur
richtigen Partition. Im Beispiel
geh¨ort a zu Partition 2.
SEN1 Software Engineering 1
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
20. Februar 2014
23/32
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Clock12 interface
public interface Clock12 {
void tick ();
void setTime ( boolean pm , int hrs ,
int min , int sec );
int getHour ();
int getMinutes ();
int getSeconds ();
void setHour ( int hour );
void setMinutes ( int minutes );
void setSeconds ( int seconds );
boolean isPM ();
void setPM ( boolean pm );
String getTime ();
}
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
24/32
8
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Tests schreiben und planen
Test scenarios
Test tools
Equivalenz Partitionierung
Equivalence classes
Equivalenc classes :
setHour :
1
2
3
4
hour < 0
0 <= hour <12
12 <= hour <= 24
hour > 24
input :
hour =16
-7
5
57
->
->
->
->
hour =4 &&
exception
hour =5 &&
exception
invalid data
valid data
valid data
invalid data
PM = true
" hour not negative "
PM = false
" hour not greater than 24 "
etc .
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
25/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Classification Tree Method
Mit der Classification Tree Method k¨
onnen wir
systematisch blackbox Tests entwerfen.
Diese Testdesignmethode enth¨alt vier Schritte:
1
2
3
4
Identifiziere die Aspekte des Testobjekts.
Verteile oder partitioniere den Eingabebereich analog zu den
identifizierte Aspekte.
Spezifiziere logische Testf¨alle.
Setze das Test(skript/scenario/plan) zusammen.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
26/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
CTM Schritt 1
1
Identifiziere die Aspekte des Testobjekts.
Aspekte sind die Einfl¨
usse auf das Systeem.
Das umfasst die normale Eingabe aber auch den Zustand in
dem sich das System befindet, reihenfolge der Bedienung
usqw.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
27/32
9
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
CTM Schritt 2
2
Verteile oder partitioniere den Eingabebereich
analog zu den identifizierte Aspekte.
Teile die Eingaben in Partitionen oder Klassen auf, bezogen
auf die unterschiedliche Einfl¨
usse.
F¨
ur jede Eingabe aus einer Partition verh¨alt das System sich
auf gleicher Weise.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
28/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
CTM Schritt 3
3
Spezifiziere logische Testf¨alle.
W¨ahle ein Element aus einer Partition f¨
ur jeden Aspekt.
Kombiniere diese Elemente und ber¨
ucksichtige dabei auch die
nicht m¨ogliche Kombinationen.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
29/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
CTM Schritt 4
4
Setze das Test(skript/scenario/plan) zusammen.
Konstruiere reale Testf¨alle.
Definiere de Aktionen innehalb des Tests.
Definiere die Pr¨
ufpunkte.
Bestimme die Ausgangssituationen der Tests.
Stelle das vollst¨andige Testskript auf.
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
30/32
10
20. Februar 2014
Teststrategien
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Beispiel Tempomat
Die Aspekte
HOM/FHTeL
SEN1 Software Engineering 1
20. Februar 2014
31/32
20. Februar 2014
32/32
Akzeptanztests
Validation and verification
Der Entwicklungsprozess
Test Strategie
Classification Tree Method
Beispiel Tempomat
Die kombinierte tests
HOM/FHTeL
SEN1 Software Engineering 1
11
Document
Kategorie
Technik
Seitenansichten
1
Dateigröße
354 KB
Tags
1/--Seiten
melden