• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
FitNesse
 

FitNesse

on

  • 946 views

FitNesse is an automated testing tool for software, based on Ward Cunningham's Framework for Integrated Test, designed to support acceptance testing rather than unit testing in that it facilitates ...

FitNesse is an automated testing tool for software, based on Ward Cunningham's Framework for Integrated Test, designed to support acceptance testing rather than unit testing in that it facilitates detailed user-readable description of system function.
By Henning Luther, DialogData

Statistics

Views

Total Views
946
Views on SlideShare
946
Embed Views
0

Actions

Likes
0
Downloads
25
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Manager, Fachleute, Enduser, Tester, Entwickler
  • Alle Akteure: Kunde-> Geschäftsbezogene Sicht Fachabteilung-> Fachliche Sicht Tester-> Destruktive Sicht Programmierer-> Technologische Sicht Programmierer testet nur dass, was er laut specc programmieren sollte. Ob specc richtig interpretiert ist 1. problem.
  • Beim Schreiben von Tests fällt dem Kunden eher auf, was in der Spezifikation fehlt, falsch beschrieben ist oder vernachlässigt wurde.
  • Lücken- und Fehlerhafte Speccs sind keine Seltenheit, Tests unterstützen die Specc mit konkreten Beispielen.

FitNesse FitNesse Presentation Transcript

  • 24.05.11 DialogData GmbH & Co. KG Henning Luther Barthstraße 12 D-80339 München +49 89 89058950 [email_address] http://www. DialogData .de
    • FitNesse
    • Software Development Collaboration Tool
  • Was ist FitNesse?
    • Ein Werkzeug um die Zusammenarbeit in der Software Entwicklung zu verbessern
    • Ein Werkzeug zum Testen von Software
    • Ein Wiki
    • Ein eigenständiger Web-Server
      • Keine zusätzliche Infrastruktur nötig
  • Motivation – Warum FitNesse?
    • Möglichkeit für alle am Projekt beteiligten Akteure Software zu testen und Verhalten zu spezifizieren
      • Schutz vor Betriebsblindheit des Einzelnen
      • Förderung der Kommunikation
    • Bietet eine unmissverständliche Kommunikationsgrundlage durch Tests
      • Missverständnisse fallen beim Kommunizieren der Tests schneller auf
  • Motivation – Warum FitNesse?
    • Kunde hat die Möglichkeit seine Anforderungen mit Hilfe von Tests zu überprüfen/überdenken
      • Fehler und Lücken in den Spezifikationen fallen beim Schreiben/Lesen der Tests schneller auf
    • hohe Abdeckung durch Tests
    • mehr Zusammenarbeit und Kommunikation
    • das vom Kunden gewünschte System (Zufriedenheit)
  • Workflow – Test Driven
    • Entwicklung der Tests während der Startphase
      • Unterstützt die Spezifikation
      • Refactoring der Anforderungen zu einem frühen Zeitpunkt
    • Schreiben der Fixtures (Test-Brücken) wenn Businesslogik fertig gestellt ist.
    • Einrichtung der Testumgebung (Classpath) und Testen
  • Decision Table
    • Einfache Input-Output Entscheidungen
    Input Execute Output und Vergleich
  • Decision Table Fixture Das sollte man auf keinen Fall machen! (Kontrollstrukturen gehören in Businesslogik) Wird nach der ersten Zeile ausgeführt 2. Spalte 1. Spalte Das sollte man nicht machen! (Exception an FitNesse weiterreichen) Wird für jede Zeile vor erstem Output aufgerufen
  • Script Table
    • Komplexere Szenarien
  • Script Table Fixture 1. Zeile 2. Zeile 3. Zeile
  • Script Table Testergebnis Zeigt an, dass Exceptions aufgetreten sind Aufklappen um den Stacktrace einzusehen
  • Weitere Tabellen
    • Query Table
      • Datensätze
    • Scenario Table
      • Aufruf durch andere Tabellen, für Teilszenarien
    • Comment Table
      • für Kommentare, schnelles Auskommentieren einer Tabelle
    • Import Table
      • importieren von Fixture-Paketen(Set-Up)
  • Wiki
    • Kann als Wiki genutzt werden
      • Besitzt jedoch nur Basis-Features eines Wiki
    • Hierarchie von Wiki-Seiten in Baumstruktur
      • Test-Suites als Sammlung von Tests zur gemeinsamen Ausführung
    • Eigene Markup Sprache
    • Besitzt keinen Mehrwert für das Testen
  • Starten der Tests von Aussen
    • Kommandozeile
    • Ant
  • Was Fehlt?
    • Exception-Handling scheint nicht ausgereift
      • Keine Möglichkeit anzugeben, dass eine Exception erwartet wird
      • Verhalten bei aufgetretener Exception kann nicht gesteuert werden
      • Geworfene Exception muss FitNesse spezifische Nachricht enthalten um in Tabelle angezeigt zu werden („message:<<lesbare Nachricht>>“)
      • Open Source, könnte selbst nachimplementiert werden
  • Hürden
    • Alle Akteure müssen den Umgang erst erlernen
    • Alle Akteure müssen FitNesse als sinnvoll erachten
    • Schlüsselfigur Kunde muss stärker als gewöhnlich in den Entwicklungsprozess eingebunden werden
  • Weiterführende Links
    • Vortrag von David Hussman
      • http://www.infoq.com/presentations/AutomatingBusinessValuewithFITandFitnesse
    • FitNesse User Guide
      • http://fitnesse.org/FitNesse.UserGuide