Im letzten Beitrag haben wir gesehen, wie man Jira-Tickets automatisch in Gherkin-Features überführt. In diesem Folge-Tutorial bauen wir darauf auf: Hier zeige ich Schritt für Schritt, wie diese Gherkin-Features direkt in ausführbare Playwright-Tests  mit der Unterstützung von KI umgesetzt werden können.

Als Praxisbeispiel dient wieder der GitHub-Login. Wir starten beim Feature, generieren die Step Definitions automatisch, und führen am Ende einen echten End-to-End-Test aus. So wird deutlich, wie aus einer Jira-Anforderung über Gherkin ein voll automatisierter Test wird – alles in einem nahtlosen, KI-gestützten Workflow. Abschließend möchte ich eine kritische Einordnung für die Nutzung von KI in Unternehmen geben.

Schritt 1 – Voraussetzungen

Stelle sicher, dass folgende Tools installiert sind:

  • Node.js (v18+) – für Playwright und Skriptausführung
  • npm – Paketmanager
  • Playwright – Browserautomation
  • @cucumber/cucumberBDD-Framework
  • OpenAI API-Key – für die automatische Generierung von Step Definitions
  • Optional: Test-GitHub-Account für Login-Daten

Installation der Pakete:

npm install @cucumber/cucumber playwright openai dotenv
npx playwright install

Hinweis: Für dieses Tutorial empfiehlt es sich, vorab den ersten Teil des Tutorials zu lesen.

Schritt 2 – Projektstruktur

Ich erweitere meine Projektstruktur um einen step_definitions-Ordner. Darin wird später die automatisierte login.steps.js landen.

ki-jira-gherkin-tutorial/
├── features/
│   └── ...
├── step_definitions/
│   └── login.steps.js
├── aiGenerateSteps.js
└── package.json

Schritt 3 – Gherkin-Feature erstellen

Im vorherigen Tutorial haben wir automatisiert die Datei DEV-8.feature direkt aus einem Jira-Ticket erzeugt.
Um den weiteren Ablauf übersichtlich und nachvollziehbar zu halten, konzentrieren wir uns in diesem Beitrag bewusst auf ein einzelnes Szenario: den erfolgreichen Login.

Das entsprechende Szenario habe ich vorab ins Englische übersetzt, da wir die Feature-Datei später mit Cucumber und Playwright ausführen und englische Gherkin-Keywords in der Praxis meist besser mit bestehenden Toolchains harmonieren.

Die features/login.feature:

Schritt 4 – Step Definitions automatisch mit OpenAI generieren

Nachdem wir nun ein fertiges Gherkin-Feature haben, fehlt noch die technische Umsetzung: die Step Definitions, die die Given/When/Then-Schritte mit konkreten Playwright-Aktionen verbinden.

Anstatt diese Schrittdefinitionen manuell zu schreiben, nutzen wir erneut OpenAI, um sie direkt aus dem Gherkin-Feature automatisch zu generieren. So sparen wir Zeit, vermeiden wiederkehrende Arbeit und bleiben trotzdem konsistent zum Feature.

Dazu erstellen wir ein kleines Skript namens aiGenerateSteps.js, das das Feature einliest, an OpenAI übergibt und daraus lauffähige Cucumber-Step-Definitions in JavaScript erzeugt.

Ich führe das Skript aus:

node aiGenerateSteps.js

Schritt 5 – Testskript prüfen

In step_definitions/login.steps.js wurde uns nun der Playwright-Code automatisiert von der AI generiert.

Hinweis: Bevor ich das Skript zur automatischen Generierung der Step Definitions ausgeführt habe, habe ich noch einige manuelle Vorarbeiten vorgenommen. Dazu gehörten unter anderem das Überprüfen und Stabilisieren der Selektoren, das bewusste Setzen von Wartepunkten für Navigation und Seitenaufbau sowie kleinere Anpassungen an Timeouts, um typische Flaky-Probleme zu vermeiden.

Außerdem habe ich den Then-Step angepasst und nicht mehr die URL, sondern ein sichtbares, fachlich relevantes UI-Element geprüft: das „Home“-Heading im eingeloggten Zustand.

Und klar.. hier gebe es sicherlich noch weitere Verbesserungsmöglichkeiten, z.B. Browser/Page in Before/After- Hooks auszulagern etc.

Mit kleineren, manuellen Arbeiten entstand also schlussendlich folgender Testfall:

Diese Vorarbeit stellt sicher, dass die KI nicht nur syntaktisch korrekten Code erzeugt, sondern praxisnahe, lauffähige Playwright-Schritte, wie man sie auch in realen Projekten schreiben würde.

Schritt 6 – Test ausführen

npx cucumber-js --require step_definitions/login.steps.js features/login.feature

Hinweis: Mit --require gebe ich explizit an, welche Step-Definition-Dateien geladen werden sollen. Dadurch behalte ich die volle Kontrolle darüber, welcher Code tatsächlich ausgeführt wird – gerade in Projekten mit mehreren Features und Szenarien ist das essenziell.

Playwright führt die Schritte aus und meldet den Erfolg des Szenarios:

Ergebnis

Wir haben nun:

  • Gherkin-Feature aus Jira-Ticket mit OpenAI erzeugt, siehe letzter Beitrag
  • Step Definitions automatisch mit OpenAI erzeugt
  • Playwright-Testskript ausgeführt
  • Workflow: Jira → Gherkin → Step Definitions → Playwright-Test

Meine abschließende kritische Betrachtung: Herausforderungen beim Einsatz von OpenAI in Unternehmen

Ich denke, aus Unternehmenssicht bietet der Einsatz von OpenAI in der Testautomatisierung großes Potenzial, bringt aber auch klare Herausforderungen mit sich. Besonders Themen wie Datenschutz und Compliance, die Abhängigkeit von externen KI-Diensten, sowie die Nachvollziehbarkeit und Stabilität der generierten Testergebnisse müssen sorgfältig bewertet werden.

Zudem hängt die Qualität stark von gut formulierten Prompts und vorhandener Testautomatisierungs-Expertise ab. KI sollte daher nicht als Ersatz, sondern als unterstützendes Werkzeug verstanden werden, das in bestehende Prozesse kontrolliert integriert und fachlich reviewed werden muss.

Der Einsatz von KI in der Testautomatisierung ist kein Ersatz für saubere Prozesse, aber ein starker Beschleuniger, wenn er richtig eingesetzt wird.

 

Beitrag verfasst von:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren.