Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SEMINARVORTRAG Von Jonas Robers METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN.

Ähnliche Präsentationen


Präsentation zum Thema: "SEMINARVORTRAG Von Jonas Robers METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN."—  Präsentation transkript:

1 SEMINARVORTRAG Von Jonas Robers METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN

2 CAE Elektronik Proprietary Information and/or Confidential Inhalt Übersicht METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 2 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit

3 CAE Elektronik Proprietary Information and/or Confidential Motivation Ausgangslage Hauptsächlicher Testaufwand bei GESI sind Tests der Benutzeroberflächen Ablauf: 1.Erstellung eines ATM zur Spezifikation von zu erfüllenden Funktionen 2.Entwicklung eines Features durch den Entwickler 3.Tests durch ein Test-Team anhand des ATM und der Dokumentation des Entwicklers In der Regel mit Python geschriebene Squish-Tests, welche die Oberflächen der Simulation auf korrekte Funktionalität prüfen METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 3

4 CAE Elektronik Proprietary Information and/or Confidential Motivation Warum testet man? Irren ist menschlich! Fehler kosten Geld! METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 4

5 CAE Elektronik Proprietary Information and/or Confidential Inhalt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 5 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit Wasserfallmodell Das V-Modell Testverfahren Agile Testverfahren

6 CAE Elektronik Proprietary Information and/or Confidential Softwareentwicklung Wasserfallmodell 1. Planung2. Definition und Entwurf3. Implementierung4. Testen5. Einsatz und Wartung METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 6

7 CAE Elektronik Proprietary Information and/or Confidential Softwareentwicklung Das V-Modell METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 7 1. Planung 2. Definition und Entwurf 3. Implementierung 4. Testen 5. Einsatz und Wartung

8 CAE Elektronik Proprietary Information and/or Confidential Softwareentwicklung Testverfahren Unit-/ KomponententestsIntegrationstestsSystemtests Abnahme- /Regressionstests METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 8 Endprodukt Tests der kleinsten Einheiten bei OOP -> Klassen Jede Einheit für sich und unabhängig von anderen In Iterationen ausgeführt Entwicklungsprozess Tests des Zusammenspiels von Komponenten Korrekte Interaktion und korrekter Austausch von Daten Paralleler Zugriff auf gemeinsam genutzte Speicher und Datenbanken Zusammenspiel mit Komponenten anderer Software Tests des System als Ganzes Unter möglichst realistischen Bedingungen Anforderungen des Kunden gesondertes Testteam Systemtests mit Beteiligung des Kunden Verwendbarkeit Sorgen für die Entscheidung des Kunden Alpha- und Betatests

9 CAE Elektronik Proprietary Information and/or Confidential Softwareentwicklung Agile Testverfahren METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 9 Manifest für Agiles Softwaretesten Wir, die in agilen Projekten testen, nehmen die Verantwortung an, zur Entstehung fehlerarmer und hochwertiger Software beizutragen. Dabei haben wir diese Werte schätzen gelernt: Konstruktives Verhältnis zwischen allen Teammitgliedern mehr als Test- Prozesse und Test-Werkzeuge Getestete Software mehr als umfassende Test-Dokumentation Zusammenarbeit mit dem Kunden mehr als formale Abnahmetests am Projektende Reagieren auf Veränderung mehr als das Befolgen eines Test-Plans Das heißt: die Prinzipien auf der rechten Seite haben ihren Wert. Dennoch erachten wir die Prinzipien auf der linken Seite als wertvoller.

10 CAE Elektronik Proprietary Information and/or Confidential Softwareentwicklung Agile Testverfahren METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 10

11 CAE Elektronik Proprietary Information and/or Confidential Inhalt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 11 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit

12 CAE Elektronik Proprietary Information and/or Confidential Ausgangslage und Anforderungen Anforderungen Simple Spezifikation der Testfälle, sodass auch Nicht-Entwickler diese verstehen können Der zusätzliche Aufwand soll sich in Grenzen halten Testautomatisierung möglich  wegen Squish-Tests vorzugsweise Python für die Testautomatisierung Schnittstellen für andere Programme (z.B. Subsets der Testfälle in ein ATM exportieren) Verbindung mit der IDE Eclipse METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 12

13 CAE Elektronik Proprietary Information and/or Confidential Inhalt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 13 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit Zeitpunkt Form Vergleich

14 CAE Elektronik Proprietary Information and/or Confidential Methoden der Testabwicklung Zeitpunkt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 14 Vom V-Modell bevorzugt Arbeit an der Software selbst kann früh begonnen werden Entwickler kann sich am Source code orientieren und Testfälle entsprechend aufstellen Von Agilen Testverfahren bevorzugt Man will Fehlern vorbeugen Testfälle für gewünschte Funktionen sollen aufgestellt werden Source code entwickeln und anpassen, bis Testfälle abgedeckt sind Vor der Implementierung Nach der Implementierung

15 CAE Elektronik Proprietary Information and/or Confidential Methoden der Testabwicklung Form METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 15 Kommentare im Source code oder in einem Textdokument Gedächtnisstützen für Entwickler Informationen für einen Tester Erfüllt den Zweck und ist nicht zeitraubend Konventionen für einheitliches Schema bei der Testfall- Erstellung Vorlage für ein Dokument „Stichwort -> Aktion“-Punkte  KDD  BDD Testautomatisierung möglich Schemalos Mit Schema

16 CAE Elektronik Proprietary Information and/or Confidential BDD (BEHAVIOR DRIVEN DEVELOPMENT)KDD (KEYWORD DRIVEN DEVELOPMENT) Methoden der Testabwicklung BDD u. KDD Verwendet Domain Specific Language Gherkin Verwendet Keywords Meist in Tabellendokumenten festgehalten METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 16 ObjektAktionDaten Textfeld (Benutzername) Text eingeben

17 CAE Elektronik Proprietary Information and/or Confidential Methoden der Testabwicklung Vergleich METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 17 Vor der Implementierung Schemalos Mit Schema Nach der Implementierung Simpel und geringer Aufwand Große Fehleranfälligkeit Zumeist unverständlich für Nicht- Entwickler Insgesamt ungeeignet für große Softwareprojekte Bessere Strukturierung und somit bessere Verständlichkeit Testautomatisierung möglich Große Fehleranfälligkeit durch Orientierung am Source code Erhöhter Aufwand für den Entwickler relativ geringer Aufwand für die Erstellung der Testfälle Bessere Absprache mit dem Kunden -> verbesserte Verständlichkeit auf Seiten des Kunden u.U. unverständlich und unübersichtlich für die Tester Bei Fehlern hoher Kosten- und Zeitaufwand Durch Keywords/DSL für alle Beteiligten verständlich Auf lange Sicht geringer Aufwand für Reparatur und Wartung Testautomatisierung möglich Geeignet für große Softwareprojekte Erhöhter Aufwand für die Testfallerstellung Durch entsprechende Tools u.U. erhöhter Geldaufwand

18 CAE Elektronik Proprietary Information and/or Confidential Inhalt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 18 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit Cucumber Behave

19 CAE Elektronik Proprietary Information and/or Confidential Tools zur Testfallerstellung Cucumber METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 19

20 CAE Elektronik Proprietary Information and/or Confidential Tools zur Testfallerstellung Behave METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 20 Testfall in Feature definieren Code für die Tests in Steps definieren Für Vorbedingung, Aktion und Ergebnis eine eigene „step implementation“ Alle Features werden mithilfe ihrer Steps getestet

21 CAE Elektronik Proprietary Information and/or Confidential Inhalt METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 21 MotivationSoftwareentwicklungAnforderungen Methoden der Testabwicklung Tools zur Testfallerstellung Fazit

22 CAE Elektronik Proprietary Information and/or Confidential Fazit Softwaretests sind wichtig für eine funktionierende Software Agile Verfahren eignen sich besser als die Standardmethoden Bei den agilen Testverfahren erweist sich das Behavior Driven Development als das geeignetste Aufgrund der mit Python entwickelten Squish-Tests, eignet sich Behave am besten METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN 22

23 CAE Elektronik Proprietary Information and/or Confidential Quellen (Behave Tutorial, Benno Rice) – http://pythonhosted.org/behave/tutorial.html#python-step- implementationshttp://pythonhosted.org/behave/tutorial.html#python-step- implementations (Manifest für Agiles Softwaretesten, imbus AG) – http://www.agiletestingmanifesto.dehttp://www.agiletestingmanifesto.de (Cucumber Wiki, Lorenzo Polidori) – https://github.com/cucumber/cucumber/wikihttps://github.com/cucumber/cucumber/wiki (Domänenspezifische Sprache, Wikipedia) – http://de.wikipedia.org/wiki/Dom%C3%A4nenspezifische_Sprache http://de.wikipedia.org/wiki/Dom%C3%A4nenspezifische_Sprache (Squish, Wiki) – http://en.wikipedia.org/wiki/Squish_%28Froglogic%29http://en.wikipedia.org/wiki/Squish_%28Froglogic%29 (Keyword-Driven Testing, Wikipedia) – http://de.wikipedia.org/wiki/Keyword-Driven_Testinghttp://de.wikipedia.org/wiki/Keyword-Driven_Testing (V-Modell, Wikipedia) – http://de.wikipedia.org/wiki/V-Modellhttp://de.wikipedia.org/wiki/V-Modell QUELLEN 23

24 THANK YOU


Herunterladen ppt "SEMINARVORTRAG Von Jonas Robers METHODEN UND TOOLS ZUR ERFASSUNG VON TESTFÄLLEN."

Ähnliche Präsentationen


Google-Anzeigen