Fachbuch, 2021
78 Seiten
1 Einleitung, Motivation und Überblick
2 Problemstellung und Forschungsfrage
3 State of the Art von Softwaretesting
3.1 Testautomatisierung
3.2 Test Driven Development (TDD)
3.3 Behaviour Driven Development (BDD)
3.4 Unterschied zwischen TDD und BDD
3.5 Aktuelle Forschungsarbeiten zu dem Thema
4 Methodisches Vorgehen
5 Ergebnis
5.1 Vorstellung und Auswahl der BDD-Frameworks
5.2 Testszenario
5.3 Kriterienkatalog
5.4 Ergebnisse der Implementierung mit Cucumber
5.5 Ergebnisse der Implementierung mit Spock
5.6 Vergleich der Frameworks
6 Fazit
6.1 Zusammenfassung
6.2 Limitations
6.3 Next Steps
6.4 Lessions Learned
6.5 Contribution to Practice
6.6 Contribution to Science
Die Arbeit untersucht Probleme bei der Automatisierung von Akzeptanztests nach BDD-Prinzipien in agilen Projekten der Automobilbranche und ermittelt das am besten geeignete Testwerkzeug durch einen Vergleich von Cucumber und Spock.
3.3 Behaviour Driven Development (BDD)
Behaviour Driven Development wurde zuerst im Jahr 2003 von Dan North als Antwort auf häufig auftretende Probleme und Fragen mit dem Ansatz des Test Driven Development vorgestellt (North, 2006). Der Ansatz des TDD wurde bereits in Kapitel 3.2 vorgestellt. Dan North entwickelte das BDD Framework JBehave (North, 2006). Dieses Framework testet das Verhalten der Software (North, 2006). David Chelimsky (2010) beschrieb das Problem des Test Driven Development in seinem Buch The RSpec Book wie folgt:
„The problem with testing an object´s internal structure is that we´re testing what an object is instead of what it does. What an object does is significantly more important.”
Stakeholder haben kein primäres Interesse daran, wie etwas umgesetzt wird sondern nur, dass es richtig umgesetzt wird (Chelimsky, 2010). Behaviour Driven Development fokussiert das Verhalten der Software und nicht die interne Struktur der Software (Chelimsky, 2010). Bei Entwicklern die Test Driven Development anwenden, kommen häufig die Fragen auf, wo mit der Entwicklung gestartet werden soll und wie die Tests benannt werden sollen (North, 2006). Oft fehlt auch das klare Verständnis der Entwickler warum ein Test fehlschlägt (North, 2006). Diese auftretenden Fragen sollen mit dem Ansatz des Behaviour Driven Development beantwortet werden. Demnach soll mit dem Feature gestartet werden, das den größten Geschäftswert für die Software liefert (North, 2006). Die Priorisierung der Features verhindert, dass unnötige Zusatzfunktionen vor wichtigen Funktionen, die etwas zu dem Geschäftswert der Software beitragen, implementiert werden. Auch die Namengebung ist beim BDD anders als beim TDD. Die Namen der Tests sollen ganze Sätze bilden um die Lesbarkeit der Tests zu verbessern (North, 2006). Dabei wird das Wort „test“ zu Beginn der Methode entfernt und die darauffolgenden Wörter im Camel-Case in ganze Sätze formatiert (North, 2006). Diese klare Benennung der Testfälle hilft bei dem Verständnis, warum bestimmte Tests fehlschlagen. Durch die ganzen Sätze sagen die Testnamen eindeutig aus, welches Verhalten der Software getestet wird und somit auch fehlschlägt oder funktioniert.
1 Einleitung, Motivation und Überblick: Einführung in die Thematik der Testautomatisierung mittels BDD und Darlegung der Herausforderungen innerhalb eines spezifischen Fahrzeugkonfigurator-Projekts.
2 Problemstellung und Forschungsfrage: Definition der zentralen Forschungsfrage bezüglich des optimalen BDD-Frameworks für Akzeptanztests unter Berücksichtigung von Testdatenproblemen.
3 State of the Art von Softwaretesting: Theoretische Grundlagen zu Testautomatisierung, TDD, BDD und relevanten Forschungsarbeiten in diesem Bereich.
4 Methodisches Vorgehen: Beschreibung des experimentellen Designs, basierend auf einem Testszenario für REST-Schnittstellen, sowie des Auswahlprozesses für die Frameworks.
5 Ergebnis: Detaillierte Vorstellung der Frameworks, der Kriterien, der Implementierungsergebnisse und abschließender Vergleich mittels Nutzwertanalyse.
6 Fazit: Zusammenfassende Bewertung, Diskussion der Limitations der Arbeit, Ausblick auf zukünftige Schritte und Einordnung der Ergebnisse in Praxis und Wissenschaft.
Behaviour Driven Development, BDD, Testautomatisierung, Akzeptanztest, Cucumber, Spock, Softwaretesting, Agile Softwareentwicklung, Framework-Vergleich, Testqualität, Nutzwertanalyse, Gherkin, Software-Konfigurator, REST-Schnittstelle, Qualitätssicherung.
Die Arbeit befasst sich mit der Herausforderung, Software in agilen Projekten der Automobilbranche mittels BDD-Prinzipien effektiv zu testen und Akzeptanztests zu automatisieren.
Zentrale Themen sind Software-Testmethoden (TDD vs. BDD), Testautomatisierung, Framework-Auswahl anhand von Kriterienkatalogen und die praktische Evaluierung von Werkzeugen.
Das Hauptziel ist die Beantwortung der Frage: „Welches Behaviour Driven Development Framework eignet sich zur Automatisierung von Akzeptanztests am besten?“.
Es werden ein systematischer Vergleich mittels einer Nutzwertanalyse durchgeführt, sowie eine Online-Umfrage unter Entwicklern zur Erhebung relevanter Auswahlkriterien genutzt.
Der Hauptteil umfasst den State-of-the-Art der Testmethodik, das methodische Vorgehen bei der Implementierung eines Fahrzeugkonfigurators sowie die detaillierte Evaluierung der Frameworks Cucumber und Spock.
Die wichtigsten Begriffe sind Behaviour Driven Development (BDD), Testautomatisierung, Cucumber, Spock, Akzeptanztests und Nutzwertanalyse.
Cucumber bietet umfassendere Möglichkeiten zur Darstellung von Testergebnissen, was im Rahmen der Nutzwertanalyse aufgrund der hohen Gewichtung dieses Kriteriums ausschlaggebend war.
Veraltete Testdaten wurden als signifikantes Problem identifiziert; die Untersuchung bewertet, wie gut die Frameworks bei der Verwaltung und Pflege dieser Daten unterstützen.
Die DSL (in Form von Gherkin bei Cucumber) ermöglicht es, Tests in natürlicher Sprache zu formulieren, was die Kommunikation zwischen Fachabteilung und technischer Entwicklung erheblich verbessert.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

