, ,

Ein QA-Workflow mit MCP Playwright Server und Visual Studio Code

Was ist der MCP Playwright Server

Das Model Context Protocol (MCP) ist ein offener Standard von Anthropic für die sichere Verbindung zwischen Large Language Models und externen Ressourcen (Anthropic, 2024, „Model Context Protocol: Enabling secure connections between AI and external systems“). Der MCP Playwright Server implementiert dieses Protokoll speziell für Browser-Automatisierung über das Playwright-Framework.

Diese innovative Lösung demokratisiert die Testautomatisierung für QA-Teams, da sie natürlichsprachliche Testbeschreibungen direkt in ausführbare Browser-Tests transformiert – ohne Programmierkenntnisse. Das System nutzt den Browser-Accessibility-Tree anstelle komplexer Selektoren und bietet Self-Healing-Funktionalitäten, wodurch auch nicht-technische QA-Fachkräfte automatisierte Tests erstellen können (Microsoft, 2024, „Visual Studio Code and AI-powered development tools“; Playwright Documentation, 2024, „Browser automation with accessibility-first approach“).

Warum sind automatisierte Tests wichtig

Automatisierte Tests sind kritisch für moderne CI/CD-Pipelines und gewährleisten konsistente Qualitätssicherung bei hoher Release-Frequenz (Fowler, 2013, „Continuous integration“). Sie eliminieren menschliche Fehlerquellen, ermöglichen Parallelisierung und reduzieren Testkosten durch Wiederverwendbarkeit (Crispin & Gregory, 2009, „Agile testing: A practical guide for testers and agile teams“).

Motivation für praktische Erprobung

Die theoretischen Vorteile der KI-gestützten Testautomatisierung sind vielversprechend – doch wie funktioniert die natürlichsprachliche Testerstellung in der Praxis? Kann ein QA-Engineer tatsächlich ohne Code komplexe Testszenarien automatisieren? Die einzige Möglichkeit, die Effektivität und Grenzen dieser Technologie zu bewerten, liegt in der praktischen Anwendung mit einem konkreten Workflow-Beispiel.


Praktisches Beispiel

Die Idee: Integration ohne zusätzliche Installation

Die Kernidee liegt in der Nutzung des etablierten C#/.NET-Ökosystems mit natürlichsprachlicher KI-Unterstützung durch den MCP Playwright Server in VS Code. Anstatt neue Tools zu installieren, wird der bestehende Stack um native MCP-Integration erweitert.

Setup mit bestehendem Technology Stack

  • Visual Studio Code (neueste Version)
  • C# mit .NET 8.0
  • Reqnroll für BDD-Tests
  • Playwright für Browser-Automatisierung
  • Gherkin für Feature-Spezifikationen

Einzige Ergänzung:

  1. Öffnen Sie in VS Code das MCP-Panel (Globus-Symbol).
  2. Wählen Sie den Playwright-Server aus und klicken Sie auf „Installieren“.
  3. Verifizieren Sie im Copilot Chat, dass im Front-Matter mode: 'agent' und tools: ['playwright'] konfiguriert ist.

Agent-Modus in VS Code aktivieren

Stellen Sie in GitHub Copilot Chat sicher, dass der Agent-Modus aktiviert ist. Nur dann kann der MCP Playwright Server direkt Befehle ausführen, anstatt lediglich Vorschläge zu liefern.

Technische Begründung des Agent-Modus

Der Agent-Modus von GitHub Copilot Chat unterscheidet sich fundamental vom herkömmlichen Chat-Modus: Während der traditionelle Modus ausschließlich Textantworten und Codevorschläge ohne direkte Systeminteraktion generiert (GitHub, 2024, „GitHub Copilot Chat: Agent capabilities and execution modes“), ermöglicht der Agent-Modus die unmittelbare Ausführung von Befehlen über standardisierte Protokolle wie das Model Context Protocol (MCP) (Anthropic, 2024, „Model Context Protocol: Enabling secure connections between AI and external systems“).

Die Front-Matter-Kennzeichnung mode: 'agent' und tools: ['playwright'] in den Workflow-Dateien fungiert als Execution-Directive: Statt Textvorschläge zu liefern, werden die formulierten Anweisungen direkt mit dem MCP Playwright Server ausgeführt. Dadurch erfolgt die Browser-Automatisierung, Screenshot-Erstellung und Testvalidierung vollautomatisch ohne manuelle Zwischenschritte (Microsoft, 2024, „Playwright browser automation framework“).

Workflow-Durchführung:

Schritt 1 – Webseiten-Analyse

Die 01-webseiten-analyse.md definiert einen strukturierten QA-Analyseprozess über den MCP Playwright Server im Agent-Modus.

Was passiert

Der MCP Server führt automatisch folgende Aktionen aus:

  • Browser-Launch in Chromium (headed mode)
  • Multi-Viewport-Testing (Mobile 375×667, Tablet 768×1024, Desktop 1920×1080)
  • Accessibility-Tree-Snapshots für strukturierte Element-Identifikation
  • Performance-Monitoring über Netzwerk-Metrike
  • Cross-Browser-Validierung (Chromium, Firefox, WebKit)
  • Automatische Speicherung in analysis/webseiten-analyse-ergebnis.md

Beispiel: Ausführung im VS Code Chat

Voraussetzung: Die Datei 01-webseiten-analyse.md befindet sich im Chat-Kontext (über Drag & Drop oder @-Referenz hinzugefügt).

Eingabe im GitHub Copilot Chat (Agent-Modus):

Automatische Ausführung:
Da die 01-webseiten-analyse.md im Chat-Kontext verfügbar ist, wird automatisch der vollständige Prompt aus der Datei ausgeführt. Der Agent-Modus interpretiert die URL-Eingabe und startet sofort:

  • Browser-Sessions mit der angegebenen URL
  • Strukturierte QA-Analyse nach den definierten Kriterien
  • Erstellung der Markdown-Dokumentation

Ergebnis:
Automatische Generierung der analysis/webseiten-analyse-ergebnis.md mit:

  • Website-Übersicht und technischen Details
  • UI-Bereichen mit Accessibility-Selektoren
  • Funktionaler Analyse und Risikobewertung
  • Performance-Metriken und Barrierefreiheits-Assessment

Das Analyseergebnis bildet die Grundlage für Schritt 2 (Testfälle ableiten) des QA-Workflows.

Schritt 2 – Testfälle ableiten

Die 02-testfaelle-ableiten.md definiert die systematische Ableitung validierter Testfälle aus der vorherigen QA-Analyse über den MCP Playwright Server.

Was passiert

Der MCP Server führt automatisch folgende Validierungen aus:

  • Selektor-Stabilität: Alle Accessibility-Selektoren aus der Analyse werden auf Funktionsfähigkeit getestet
  • Interaktions-Validierung: Klickbarkeit, Eingabefähigkeit und Navigation werden verifiziert
  • Cross-Browser-Matrix: Kompatibilitätstests in Chromium, Firefox und WebKit
  • Performance-Benchmarking: Ladezeit-Baselines für kritische User-Journeys
  • Edge-Case-Identifikation: Fehlerszenarien und Boundary-Conditions werden ermittelt
  • Automatische Speicherung in testcases/testfaelle.md

Beispiel: Ausführung im VS Code Chat

Voraussetzung: Die Datei 02-testfaelle-ableiten.md befindet sich im Chat-Kontext und die webseiten-analyse-ergebnis.md ist verfügbar.

Eingabe im GitHub Copilot Chat (Agent-Modus):

Leite aus der Analyse Testfälle für https://www.testautomatisierung.org/ ab

Automatische Ausführung:
Da die 02-testfaelle-ableiten.md im Chat-Kontext verfügbar ist, wird automatisch der vollständige Prompt aus der Datei ausgeführt. Der Agent-Modus:

  • Lädt die vorherige Analyse-Datei
  • Startet Browser-Sessions zur Selektor-Validierung
  • Führt Interaktionstests in allen drei Browser-Engines durch
  • Erstellt Performance-Benchmarks für identifizierte Risikobereiche

Ergebnis:
Automatische Generierung der testcases/testfaelle.md mit:

  • Validierte Testfall-Matrix mit IDs, Prioritäten und stabilen Selektoren
  • Cross-Browser-Kompatibilitätsbewertung für alle UI-Elemente
  • Performance-Baseline-Werte für kritische Operationen
  • Konkrete Testschritte mit verifizierten Accessibility-Selektoren
  • Fehlerszenarien basierend auf den identifizierten Risikobereichen

Die generierten Testfälle bilden die strukturierte Grundlage für Schritt 3 (Gherkin-Szenarien erstellen) des QA-Workflows.

Schritt 3 – Gherkin-Szenarien erstellen

Die 03-gherkin-szenarien.md definiert die Transformation validierter Testfälle in diskussionsfähige Gherkin-Feature-Files für Three-Amigo-Sessions. Hinweis: Dies ist ein Vorschlag für die praktische Umsetzung.

Was passiert

Der MCP Server führt automatisch folgende Validierungen aus:

  • End-to-End User-Journey-Validierung: Komplette Benutzerflüsse werden im Browser durchgespielt
  • Step-Validierung durch Live-Interaktion: Jeder Gherkin-Step wird auf Ausführbarkeit getestet
  • Cross-Browser-Szenario-Kompatibilität: Feature-Files werden in Chromium, Firefox und WebKit validiert
  • Parameter-Testing: Scenario Outlines werden mit verschiedenen Datensätzen getestet
  • Automatische Speicherung in testszenarien/ (nummeriert nach Priorität)

Beispiel: Ausführung im VS Code Chat

Voraussetzung: Die Datei 03-gherkin-szenarien.md befindet sich im Chat-Kontext und die testfaelle.md sowie webseiten-analyse-ergebnis.md sind verfügbar.

Eingabe im GitHub Copilot Chat (Agent-Modus):

Erstelle Gherkin-Szenarien aus den Testfällen für https://www.testautomatisierung.org/

Automatische Ausführung:
Da die 03-gherkin-szenarien.md im Chat-Kontext verfügbar ist, wird automatisch der vollständige Prompt aus der Datei ausgeführt. Der Agent-Modus:

  • Lädt die Testfälle-Matrix aus testfaelle.md
  • Startet Browser-Sessions zur User-Journey-Validierung
  • Führt Live-Interaktionstests für jeden geplanten Gherkin-Step durch
  • Erstellt Feature-Files mit deutscher Step-Beschreibung und englischen Keywords

Testfälle-Übersicht aus der Eingabedatei

Die vorhandenen Testfälle umfassen neun kritische Bereiche:

Priorität Bereich Testfälle
Kritisch Barrierefreiheit TC06: Screenreader-Navigation
Hoch Navigation TC01: Hauptmenü-Funktionalität
Hoch Suche TC02: Suchfunktion-Ergebnisse
Hoch Responsive TC05: Layout-Anpassung
Mittel Interaktion TC03: Links/Buttons-Klickbarkeit
Mittel Content TC04: Medien-Anzeige
Mittel Fehlerbehandlung TC07: Fehlerseiten-Darstellung
Mittel Performance TC08: Ladezeit-Validierung
Niedrig Formulare TC09: Kontaktformular-Funktion
Ergebnis:

Automatische Generierung strukturierter Feature-Files in testszenarien/:

  • 01-barrierefreiheit.feature: Accessibility-Szenarien mit ARIA-Validierung
  • 02-navigation.feature: Hauptmenü- und Navigationstests
  • 03-suche.feature: Suchfunktionalität mit Scenario Outlines
  • 04-responsive-design.feature: Multi-Device-Layout-Tests
  • 05-interaktion.feature: Link/Button-Interaktionsszenarien

Die generierten Gherkin-Szenarien verwenden deutsche Step-Beschreibungen mit englischen Keywords und dienen als strukturierte Diskussionsgrundlage für Three-Amigo-Sessions zwischen Product Owner, Entwicklern und Testern. Jedes Szenario wurde durch Live-Browser-Interaktion auf Ausführbarkeit validiert.

Das Ergebnis bildet die Grundlage für Schritt 4 (Testprojekt-Generierung) des QA-Workflows.

Schritt 4 – Testprojekt generieren

Die 04-testskript-generierung.md definiert die Transformation validierter Gherkin-Szenarien in ein ausführbares .NET 8.0 Testprojekt mit Page Object Pattern und Reqnroll-Integration. Hinweis: Dies ist ein Vorschlag für die praktische Umsetzung.

Was passiert

Der MCP Server führt automatisch folgende Code-Generierung aus:

  • Live-Code-Validierung: Alle generierten CSS/Accessibility-Selektoren werden auf Stabilität getestet
  • Cross-Browser-API-Kompatibilität: C#-Playwright-Calls werden in Chromium, Firefox und WebKit validiert
  • Wait-Strategy-Development: Explizite Waits für alle Interaktionen werden durch Live-Browser-Tests optimiert
  • Feature-Migration: Gherkin-Dateien werden in das QAWorkflowTests-Projekt kopiert und angepasst
  • Vollständige Projektstruktur: Features/, StepDefinitions/, PageObjects/, Hooks/ und Configuration/
  • Automatische Integration: dotnet build und dotnet test Validierung

Beispiel: Ausführung im VS Code Chat

Voraussetzung: Die Datei 04-testskript-generierung.md befindet sich im Chat-Kontext und die Gherkin-Feature-Files aus testszenarien/ sind verfügbar.

Eingabe im GitHub Copilot Chat (Agent-Modus):

Generiere C# Testprojekt aus den Gherkin-Szenarien für https://www.testautomatisierung.org/

Automatische Ausführung:
Da die 04-testskript-generierung.md im Chat-Kontext verfügbar ist, wird automatisch der vollständige Prompt aus der Datei ausgeführt. Der Agent-Modus:

  • Lädt alle .feature-Dateien aus dem testszenarien/-Ordner
  • Startet Browser-Sessions zur Selektor-Validierung der generierten C#-Codes
  • Führt Cross-Browser-Kompatibilitätstests für alle Playwright-API-Calls durch
  • Generiert vollständige .NET 8.0 Projektstruktur mit Reqnroll und FluentAssertions

Ergebnis:
Automatische Generierung der kompletten QAWorkflowTests/-Projektstruktur:

  • Features/: Migrierte .feature-Dateien (01-barrierefreiheit.feature, 02-fehlerbehandlung.feature, etc.)
  • StepDefinitions/: C#-Klassen mit deutschsprachigen Step-Definitionen
  • PageObjects/: Page Object-Klassen mit MCP-validierten Accessibility-Selektoren
  • PageObjects/Base/: Erweiterte BasePageObject-Klasse mit robusten Wait-Strategien
  • Hooks/: Setup/Teardown-Logik für Browser-Management
  • Configuration/: TestConfiguration für Multi-Browser-Settings

Das generierte Projekt ist sofort ausführbar mit dotnet test, verwendet Accessibility-First-Selektoren (GetByRole(), GetByLabel()) und implementiert Cross-Browser-kompatible Test-Ausführung in Chromium, Firefox und WebKit.

Testausführung und Projektanpassungen

Generierte Projektstruktur finalisieren

Das durch den MCP Server generierte QAWorkflowTests/-Projekt benötigt möglicherweise finale Anpassungen der Konfigurationsdateien:

QAWorkflowTests.csproj Ergänzungen:

Playwright Browser Installation:

bash
# Nach der Projektgenerierung erforderlich
cd QAWorkflowTests
dotnet build
pwsh bin/Debug/net8.0/playwright.ps1 install

Testausführung

Lokale Ausführung aller Tests:

bash
# Im QAWorkflowTests-Verzeichnis
dotnet test

Spezifische Feature-Ausführung:

bash
# Einzelne Feature-Datei testen
dotnet test --filter "FullyQualifiedName~Barrierefreiheit"# Nach Tags filtern
dotnet test --filter "Category=smoke"

Cross-Browser-Ausführung:

bash
# Browser über Umgebungsvariable steuern
BROWSER=firefox dotnet test
BROWSER=webkit dotnet test

Detaillierte Ausgabe für Debugging:

bash
dotnet test --logger "console;verbosity=detailed"
Das generierte Testprojekt ist nach diesen Anpassungen vollständig ausführbar und integriert sich nahtlos in bestehende .NET-Entwicklungsworkflows.

Das vollständige Testprojekt stellt das finale Ergebnis des strukturierten QA-Workflows dar – von der initialen Webseitenanalyse bis zur produktionsreifen Testautomatisierung.

Fazit & Ausblick

Praktische Erfahrungen mit dem MCP Playwright Server

Die Implementierung des QA-Workflows mit dem MCP Playwright Server zeigt sowohl das Potenzial als auch die Grenzen KI-gestützter Testautomatisierung auf.

Effizienzgewinn bei korrekter Formulierung:
Bei präziser Anweisungsformulierung erfolgt die automatisierte Generierung von Testfällen und Testprojekten mit erheblicher Geschwindigkeitssteigerung. Die Schritte 1-3 des Workflows (Analyse, Testfallableitung, Gherkin-Szenarien) demonstrieren die praktische Leistungsfähigkeit natürlichsprachlicher Testbeschreibungen.

Herausforderungen bei der Nachbearbeitung:
Die manuelle Anpassung generierter Testkomponenten erweist sich als kritischer Faktor. Während die initiale Codegenerierung automatisiert erfolgt, benötigen Konfigurationsanpassungen, Selektor-Stabilisierung und Browser-spezifische Optimierungen weiterhin fachliche Expertise.

Kompetenzanforderungen bleiben bestehen:
Obwohl der MCP Playwright Server die Demokratisierung der Testautomatisierung ermöglicht (Microsoft, 2024, „Playwright browser automation framework“), sind fundierte QA-Kenntnisse zur Bewertung und Korrektur der Ergebnisse unerlässlich. Die Technologie reduziert die Programmieranforderungen, nicht jedoch die fachliche Expertise zur Qualitätssicherung.

Ausblick auf technologische Entwicklung

Die kontinuierliche Weiterentwicklung von KI-gestützten Development-Tools erfordert permanente Kompetenzaktualisierung in QA-Teams (GitHub, 2024, „GitHub Copilot Chat: Agent capabilities and execution modes“). Der MCP-Standard zeigt das Potenzial standardisierter KI-Tool-Integration, während die Geschwindigkeit der Innovationszyklen eine proaktive Technologie-Adaption notwendig macht.

Empfehlung: QA-Fachkräfte sollten KI-gestützte Tools als Effizienz-Multiplikatoren betrachten, die bestehende Expertise verstärken, aber nicht ersetzen. Die Investition in kontinuierliche Weiterbildung bleibt kritisch für die optimale Nutzung dieser Technologien.

Model Context Protocol (MCP)

https://docs.anthropic.com/en/docs/mcp
Offizielle Anthropic-Dokumentation mit technischer Spezifikation, Implementierungsanleitungen und Code-Beispielen für MCP-Server-Entwicklung

https://modelcontextprotocol.io
Zentrale Einführungsseite zum Model Context Protocol mit Grundkonzepten, Architektur-Übersicht und Getting-Started-Guide

https://github.com/modelcontextprotocol/registry
Community-Registry mit verfügbaren MCP-Servern, RESTful API-Dokumentation und Entwicklungsrichtlinien für eigene Server

https://code.visualstudio.com/mcp
VS Code-spezifische MCP-Integration mit Installation, Konfiguration und Nutzung von MCP-Servern im Editor

Playwright Framework

https://learn.microsoft.com/de-de/microsoft-edge/playwright/
Microsoft Learn-Kurs zu Playwright mit vollständiger API-Referenz, Browser-Setup und Cross-Platform-Testing

https://betterstack.com/community/guides/testing/playwright-best-practices/
Praxisleitfaden mit 9 essentiellen Best Practices für stabile Tests, Performance-Optimierung und Wartbarkeit

https://playwright.dev/docs/accessibility-testing
Spezialisierte Dokumentation zu Accessibility-First-Selektoren, ARIA-Testing und automatisierten Barrierefreiheitsprüfungen

GitHub Copilot & VS Code Integration

https://docs.github.com/copilot
Vollständige GitHub Copilot-Dokumentation mit Setup, Features, Konfiguration und Editor-Integration

https://code.visualstudio.com/api/extension-guides/ai/mcp
Entwicklerhandbuch für MCP-Server-Integration in VS Code Extensions mit API-Referenz und Implementierungsbeispielen

https://code.visualstudio.com/docs/copilot/chat/mcp-servers
Anleitung zur Einrichtung und Nutzung von MCP-Servern im Agent-Modus von GitHub Copilot Chat

0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

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