SlideShare uma empresa Scribd logo
1 de 25
Akzeptanztests
Anforderungen Dokumentieren und Automatisiert Testen




                              Irene Ahamer
                                       und
                      Christian Baranowski
Agenda
  Einführung
      Klassische Anforderungserfassung
      Anforderungen als Akzeptanztests erfassen
  Demo
      Anforderungen als Testfall erfassen
      Testfall an Anwendung anbinden
      Anforderung automatisiert testen
Klassische Anforderungserfassung
     Umsetzung und Systemtests
Klassischer Entwicklungsprozess

                                  Ableiten der Testfälle
                                      Testspezifikation
Erstellen der Anforderungs-
spezifikation z.B. mittels Use-Cases




                              Test Anbindung, Durchführung,
                              Analyse und Auswertung

       Implementierung




                                                              Anwendung
Kommunikation



                               Testfall-
Anforderungs-                spezifikation
 spezifikation




                 Implementierung
 ???
Anforderungen ausführbar machen
           als agile Akzeptanztests
Entwicklungsprozess mit Akzeptanztests



Anforderungsdokumentation
als Testfall (Aktzeptanztests)      Implementierung




                                 Test Anbindung, Durchführung,
                                 Analyse und Auswertung
                                                                 Anwendung
Kommunikation




Anforderungs-
 spezifikation




                 Implementierung
Verwandte Agile Methoden

    Test Driven Development
    Testgetriebene Entwicklung
    - Kent Beck



BDD - Behavior Driven Development
Wie werden Anforderungen als
     Akzeptanztests beschrieben?
Das Beispiel…
Action Tabellen zur Spezifikation

                  von Akzeptanztests
Action Tabellen
Test-ID        0001

Beschreibung   Es soll ein Basar Verkäufer angelegt
               werden mit einer eindeutigen Basar-
               Nummer.
Action Tabellen
Test-ID          0001

Beschreibung     Es soll ein Basar Verkäufer angelegt
                 werden mit einer eindeutigen Basar-
                 Nummer.
Vorbedingungen

check            Verkäufer                              basarNummer=100
                                                        exists=false
Action Tabellen
Test-ID          0001

Beschreibung     Es soll ein Basar Verkäufer angelegt
                 werden mit einer eindeutigen Basar-
                 Nummer.
Vorbedingungen

check            Verkäufer                              basarNummer=100
                                                        exists=false
Test-Schritte

press            Navigation Bar                         Verkäufer         Die Verwaltungsfunktion
                                                        verwalten         der Basarverkäufer
                                                                          aufrufen.
press            Verkäufer verwalten                    Neuer Verkäufer   Den Knopf neuen
                                                                          Verkäufer klicken.
Action Tabellen
Test-ID           0001

Beschreibung      Es soll ein Basar Verkäufer angelegt
                  werden mit einer eindeutigen Basar-
                  Nummer.
Vorbedingungen

check             Verkäufer                              basarNummer=100
                                                         exists=false
Test-Schritte

press             Navigation Bar                         Verkäufer         Die Verwaltungsfunktion
                                                         verwalten         der Basarverkäufer
                                                                           aufrufen.
press             Verkäufer verwalten                    Neuer Verkäufer   Den Knopf neuen
                                                                           Verkäufer klicken.
…                 …                                      …                 …

Nachbedingungen

check             Abrechnung Übersicht                   basarNummer=100   Der Gewinn für einen
                                                         gewinn=0,00       neuen Nutzer muss 0
                                                                           Euro sein.
Alternativen zur Spezifikation von Akzeptanztests


    Andere Tabellentypen




                           DSL – domänenspezifische
                           Sprache
Demo Teil I




                       Test Framework (FIT)




                                                                   SUT
                                              Test Anbindung und
Test Spezifikation                                                       Test Reporting
                                                  Ausführung
Verwendete Werkzeuge
Überblick Werkzeuge

•  Confluence Wiki
    •  Zur Spezifikation der Testfälle
•  FIT
    •  Zum Parsen der Tabellen und zur Anbindung
       der Testfälle an die Testlogik
•  Selenium
    •  Zur Anbindung der Testschritte an die
       Weboberfläche.
Selenium




Source http://seleniumhq.org/projects/remote-control/
FIT
MCTest

Test-ID   0001

check     Verkäufer         basarNummer=100
                            exists=false



                      FIT



                      SUT
Alternative Werkzeuge
Diskussion und Fragen
Mehr Infos ...

"    
    FIT - http://fit.c2.com/

"    
    Fitnesse (FIT mit Wiki) - http://fitnesse.org/

"    
    FIT Eclipse Plugin - http://sourceforge.net/projects/fitpro/

"    
    Selenium - http://seleniumhq.org/

"    
    ...

Mais conteúdo relacionado

Mais de Christian Baranowski

Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungChristian Baranowski
 
Software Testing und Qualitätssicherung
Software Testing und QualitätssicherungSoftware Testing und Qualitätssicherung
Software Testing und QualitätssicherungChristian Baranowski
 
Einführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungEinführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungChristian Baranowski
 
Datenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiDatenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiChristian Baranowski
 
HTTP und Java Servlets Programmierung
HTTP und Java Servlets ProgrammierungHTTP und Java Servlets Programmierung
HTTP und Java Servlets ProgrammierungChristian Baranowski
 
Build Prozesse und Configuration Management
Build Prozesse und Configuration ManagementBuild Prozesse und Configuration Management
Build Prozesse und Configuration ManagementChristian Baranowski
 

Mais de Christian Baranowski (20)

Spock and Geb in Action
Spock and Geb in ActionSpock and Geb in Action
Spock and Geb in Action
 
Continuous Delivery in Action
Continuous Delivery in ActionContinuous Delivery in Action
Continuous Delivery in Action
 
Gradle and Continuous Delivery
Gradle and Continuous DeliveryGradle and Continuous Delivery
Gradle and Continuous Delivery
 
Spock and Geb
Spock and GebSpock and Geb
Spock and Geb
 
Semantic Versioning
Semantic VersioningSemantic Versioning
Semantic Versioning
 
OSGi Community Updates 2012
OSGi Community Updates 2012OSGi Community Updates 2012
OSGi Community Updates 2012
 
OSGi Mars World in Action
OSGi Mars World in ActionOSGi Mars World in Action
OSGi Mars World in Action
 
Warum OSGi?
Warum OSGi?Warum OSGi?
Warum OSGi?
 
Top10- Software Engineering Books
Top10- Software Engineering BooksTop10- Software Engineering Books
Top10- Software Engineering Books
 
Domain Driven Design - 10min
Domain Driven Design - 10minDomain Driven Design - 10min
Domain Driven Design - 10min
 
SDC - Einführung in Scala
SDC - Einführung in ScalaSDC - Einführung in Scala
SDC - Einführung in Scala
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
 
Software Testing und Qualitätssicherung
Software Testing und QualitätssicherungSoftware Testing und Qualitätssicherung
Software Testing und Qualitätssicherung
 
Einführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungEinführung Software Testing und Qualitätssicherung
Einführung Software Testing und Qualitätssicherung
 
Datenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiDatenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence Api
 
Java Servlets und AJAX
Java Servlets und AJAX Java Servlets und AJAX
Java Servlets und AJAX
 
HTTP und Java Servlets Programmierung
HTTP und Java Servlets ProgrammierungHTTP und Java Servlets Programmierung
HTTP und Java Servlets Programmierung
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Build Prozesse und Java Servlets
Build Prozesse und Java ServletsBuild Prozesse und Java Servlets
Build Prozesse und Java Servlets
 
Build Prozesse und Configuration Management
Build Prozesse und Configuration ManagementBuild Prozesse und Configuration Management
Build Prozesse und Configuration Management
 

Acceptance testing (German)