Tutorial - adessoCucumber/Cucumber GitHub Wiki

Loginvorgang

Die benötigten Daten für den Loginvorgang bestehen aus zwei Komponenten – Ihrem GitHub-Namen und dem dazugehörigen GitHub-Account-Token.

Falls Sie noch keine Token erstellt haben, können Sie diesen in Ihrem GitHub-Profil unter Settings-> Developer Settings-> Personal access tokens-> Generate new token erstellen. Dort werden Sie aufgefordert die Berechtigungen festzulegen, die der Token erteilen kann. Zur Verwendung der CucumberApp benötigt der Key jedoch keine dieser Berechtigungen.

Imgur

Nachdem Sie Ihren Benutzernamen und Ihren Token eingegeben haben, können Sie sich in der CucumberApp einloggen.

Imgur

Auswahl der Repository

Sobald Sie sich erfolgreich angemeldet haben, können Sie Ihre zu verwendende Repository aus der erscheinenden Liste auswählen.

Imgur

Erstellen einer Story

Bevor Sie mit der CucumberApp arbeiten können, müssen Sie ein Issue in Ihrem Repository erstellen und diesem das Label „story“ zuteilen, welches Sie – falls nicht bereits erstellt – zuvor erstellen müssen.

Imgur

Imgur

Imgur

Erstellen/Bearbeiten/Löschen von Szenarios

Sobald Sie Ihre Issues vollständig konfiguriert haben, können Sie in der CumberApp für diese Szenarios erstellen. Hierfür können Sie links für jede Story eine Liste an Szenarios ausklappen. Falls noch kein Szenario existiert, können Sie mit dem „+“-Button ein neues Szenario erstellen. Nachdem Sie ein Szenario erstellt haben, können Sie dies aus der Liste, welche direkt unter dem zuvor erwähnten Button erscheint, auswählen.

Imgur

Nun können Sie das Szenario löschen, den Titel des Szenarios bearbeiten („Pen“-Button neben dem Szenarionamen), den Background des Szenarios festlegen (-> Erklärung in Kapitel „Advanced“) und die Given/When/Then-Elemente ausfüllen bzw. bearbeiten. Für jedes der Given/When/Then-Elemente haben Sie unterschiedliche Möglichkeiten diese zu konfigurieren. Diese Möglichkeiten können Sie aufrufen und einfügen, indem sie auf den „+“-Button an der rechten Seite des jeweiligen Elementes drücken. Sobald Sie darauf klicken öffnet sich ein kleines Fenster unter dem Button, in welchem Sie verschiedene Auswahlmöglichkeiten haben.

Im Folgenden finden Sie Erklärungen zu den einzelnen Elementen, außerdem eine Auflistung und einzelne Beispiele zu deren Auswahlmöglichkeiten:

  • Given:

    • Bezeichnet eine Annahme / Vorraussetzung

    • Möglichkeiten: Role/Website

    • Beispiele: “As a XY”, “I am on the website: XY”

  • When:

    • Bezeichnet eine Kondition / Ablauf

    • Möglichkeiten: Website/Button/Field/Radio/Dropdown/HoverOverAndSelect/Checkbox

    • Beispiele: “I go to the Website: XY”, “I click the button: XY”

  • Then:

    • Bezeichnet eine Folge / Überprüfung

    • Möglichkeiten: Website/Text

    • Beispiele: “So I will be navigated to the website: XY”, “So I can see the text XY in the textbox: XY”

Imgur

Sobald Sie alle Elemente erstellt und korrekt ausgefüllt haben, können Sie mit dem „Save“-Button ihre Änderungen speichern.

Durchführen von Test und Abspeichern der Testdaten

Da Sie nun ein Test-Szenario konfiguriert haben, können Sie dieses nun ausführen. Dazu können Sie den „Run Tests“-Button, welcher sich direkt unter dem „Example“-Feld befindet, verwenden. Sobald Sie diesen drücken, werden Tests mit Ihren zuvor festgelegten Vorgaben (given/when/then) durchgeführt. Sind alle Testsschritte beendet, werden Ihnen die Ergebnisse in einer Übersicht dargestellt.

Imgur

Außerdem haben Sie die Möglichkeit sämtliche Metadata durchzulesen und sich unter „Features“ alle auftretenden Fehler zusammen mit deren Fehlermeldungen durchzulesen.

Imgur

Neben dem „Run Tests“-Button wurden nun zwei weitere Buttons freigeschaltet, der „Pfeil“-Button, welchen Sie verwenden können, um das Testergebnis-Feld einzuklappen und auch wieder auszuklappen, und der „Download“-Button, über welchen Sie Ihre Testergebnisse herunterladen können.

Sie haben außerdem die Möglichkeit Test für alle von Ihnen erstellte Szenarios auszuführen. Hierfür können Sie den „Run Story“-Button verwenden. Der Ablauf der Tests erfolgt exakt so wie der Test eines einzelnen Szenarios. Sie können nun in der Anzeige der Testergebnisse unter „Feature“ eine Auflistung aller getesteter Szenarios finden und diese auf mögliche Fehlermeldungen untersuchen. Auch diese Ergebnisse können Sie unter Verwendung des „Download“-Buttons herunterladen.

Advanced

In diesem Kapitel finden Sie nützliche Aktionen, die Sie neben den Hauptaktionen verwenden können.

  • Background:

    • Den Background können Sie verwenden, um alle Aktionen festzulegen, die vor dem Test der gesamten Story oder eines Szenarios durchgeführt werden sollen. Er wird vor der Durchführung der einzelnen Given/When/Then-Steps ausgeführt und kann szenarioübergreifend verwendet werden. Er ermöglicht also eine Festlegung von Given-Steps, die für alle Szenarios gelten.

    • Beispiel:

      Imgur

  • Examples:

    • Zur Verwendung von Examples können Sie in ihren Given/When/Then-Statements Platzhalter erstellen. Diesen können Sie in einer Tabelle Werte zuweisen, welche an Stelle des Platzhalters verwendet werden. Einem Platzhalter können mehrere Werte zugewiesen werden. Ist dies der Fall, werden alle Werte nacheinander in diesen Platzhalter eingesetzt und Tests mit ihnen durchgeführt. Jeder dadurch erstellte Testfall wird individuell und unabhängig voneinander durchgeführt.

    • Beispiel:

      Imgur

Nützliche Links

In diesem Kapitel finden Sie eine Auflistung nützlicher Links, welche bei Problemen helfen sollen.

Gherkin Reference

Introduction to BDD

Cucumber Dokucumentation