Communitygithub.com

auto-qa

Autonome, intentionsgesteuerte QA-Testengine mit dualem Betriebsmodus (Antigravity Agent Skill CLI und Stdio MCP Server). Bietet selbstheilende Playwright-Ausführung, nativen .spec.ts-Compiler, aktive Modal-Isolation und einen Black-Box-Oberflächencrawler für Client-Websites oder lokale Apps.

Was ist auto-qa?

Auto-QA ist eine autonome, intentionsgesteuerte Web-QA-Testengine, die End-to-End-Benutzerreisen gegen jede Webanwendung (lokaler Entwicklungs-Server oder Live-Website) ausführt. Sie nutzt einfache englische Benutzerabsichten, selbstheilende W3C-Zugänglichkeitsheuristiken, aktive Modal-Isolation und native Kompilierung zu `@playwright/test`. Die Engine arbeitet in zwei Modi: als MCP-Tool (über JSON-RPC) oder als Standalone-CLI (über `run_command`). Ihr dreistufiger Testlebenszyklus umfasst die Oberflächenerkennung (Crawling interaktiver Elemente), die Erstellung eines deklarativen Testplans (`auto_qa_frontend_test_plan.json`) sowie die Ausführung mit Selbstheilung und Screenshot-Erstellung bei Fehlern. Im Fehlerfall exportiert Auto-QA native Playwright-Tests als `.spec.ts`-Dateien. Die fünfstufige Verifikationsstrategie deckt Navigation, interaktive Steuerelemente, Formularvalidierung, Authentifizierung und CRUD-Workflows ab – ideal für die Automatisierung von QA-Prozessen ohne Zugriff auf den Quellcode der Zielanwendung.

Funktioniert mit~Claude Code~Codex CLI~Cursor✓Antigravity✓Gemini CLI
npx skills add https://github.com/yashh1323/auto-qa/tree/HEAD

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Auto-QA: Autonome, intentionsgesteuerte QA-Engine

Eine autonome Web-QA-Testtoolchain, die End-to-End-Benutzerreisen gegen jede Webanwendung (lokaler Entwicklungs-Server oder Live-Website) mit Hilfe von englischen Benutzerabsichten, selbstheilenden W3C-Zugänglichkeitsheuristiken, aktiver Modal-Isolation und nativer @playwright/test-Kompilierung ausführt.


1. Entscheidungsregel für den dualen Betriebsmodus

Bevor Sie Maßnahmen ergreifen, überprüfen Sie Ihre deklarierten Tools:

  • MODUS 1: MCP-Tool-Modus: Wenn Tools, die mit auto_qa_ beginnen (z.B. auto_qa_execute_and_heal), in Ihrer aktiven Tool-Liste verfügbar sind, rufen Sie diese direkt über JSON-RPC auf.
  • MODUS 2: Antigravity Skill CLI-Modus (Standard & Standalone): Wenn keine auto_qa_*MCP-Tools deklariert sind, führen Sie alle QA-Aktionen über run_command mit der einheitlichen CLI aus:
    node "<skillPath>/scripts/cli.js" <command>
    
    (Lösen Sie <skillPath> zu ~/.gemini/config/skills/auto-qa oder dem Repository-Stammverzeichnis auf).

2. Der 3-stufige Testlebenszyklus

Stufe 1: Oberflächenerkennung (Zugängliche Steuerelemente kartieren)

Durchsuchen Sie die Ziel-URL, um interaktive Schaltflächen, Eingabefelder, Links und modale Dialoge zu extrahieren.

  • MCP-Modus: Rufen Sie auto_qa_generate_code_summary(projectPath, url) auf.
  • Skill CLI-Modus:
    node "<skillPath>/scripts/cli.js" discover http://localhost:3000 -o auto_qa_tests/tmp/surface.json
    

Stufe 2: Erstellung des Intentionsplans (auto_qa_frontend_test_plan.json)

Erstellen Sie den deklarativen Testplan in auto_qa_tests/auto_qa_frontend_test_plan.json.

  • MCP-Modus: Rufen Sie auto_qa_generate_frontend_test_plan(projectPath, name, planSteps) auf.
  • Skill CLI-Modus: Schreiben Sie die JSON-Datei direkt mit Ihrem Dateierstellungstool:
{
  "$schema": "https://raw.githubusercontent.com/TestSprite/testsprite-cli/main/schemas/plan.schema.json",
  "projectId": "project-name",
  "type": "frontend",
  "name": "Benutzerregistrierungs- & Anmeldevorgang",
  "targetUrl": "http://localhost:3000",
  "priority": "p0",
  "planSteps": [
    { "type": "action", "description": "navigate to http://localhost:3000/login" },
    { "type": "action", "description": "type '[email protected]' into 'Email'" },
    { "type": "action", "description": "type 'TestPass123!' into 'Password'" },
    { "type": "action", "description": "click 'Sign In'" },
    { "type": "assertion", "description": "verify 'Dashboard' is visible" },
    { "type": "assertion", "description": "verify URL contains '/dashboard'" }
  ]
}

Unterstützte Intentionsverben (Groß-/Kleinschreibung unwichtig, einfache oder doppelte Anführungszeichen):

  • Aktionen:
    • navigate to <http(s)://url> / go to </path or http(s)://url>
    • type '<text>' into '<target>' / fill '<text>' into '<target>'
    • click '<target>' / press '<target>'
    • select '<option>' from '<target>'
    • check '<target>' / tick '<target>'
  • Assertions:
    • verify '<target>' is visible / appears
    • verify '<target>' is not visible / disappears
    • verify text '<text>' / contains '<text>'
    • verify URL contains '<path>'

Stufe 3: Ausführung, Selbstheilung & Code-Kompilierung

Führen Sie den deklarativen Testplan mit selbstheilender Elementauflösung aus, erfassen Sie Fehlersuchbildschirme und exportieren Sie nativen Code.

  • MCP-Modus:
    • Ausführen: auto_qa_execute_and_heal(projectPath, planFile, baseUrl)
    • Exportieren: auto_qa_compile_to_playwright(planPath, outputPath)
  • Skill CLI-Modus:
    • Test ausführen:
      node "<skillPath>/scripts/cli.js" run auto_qa_tests/auto_qa_frontend_test_plan.json -u http://localhost:3000
      
      (Hinweis: Exit-Code 1 zeigt einen Assertionsfehler während des Tests an. Überprüfen Sie auto_qa_tests/artifacts/ auf Screenshots und auto_qa_tests/auto-qa-test-report.md auf Schrittdauern und Fehlertraces).
    • In nativen Playwright TypeScript kompilieren:
      node "<skillPath>/scripts/cli.js" compile auto_qa_tests/auto_qa_frontend_test_plan.json -o tests/e2e/flow.spec.ts
      

3. CLI-Unterbefehlsübersicht

UnterbefehlZweckStandardausgabe
doctorVorabprüfung für Node, Playwright und Chromium-Binärdatei.Terminal-Status
discover <url> [-o <file>]Durchsucht die Website und extrahiert Schaltflächen, Eingabefelder, Links, Modals und den Zugänglichkeitsbaum.JSON-Oberflächenkarte
run <planFile> [-u <url>] [-o <dir>]Führt den Intentionsplan mit selbstheilender Auflösung aus.auto_qa_tests/artifacts/ + auto-qa-test-report.md
compile <planFile> [-o <file>]Kompiliert den deklarativen Plan in natives @playwright/test .spec.ts.<planName>.spec.ts
bootstrap [dir] [-u <url>]Initialisiert auto_qa_tests/tmp/config.json.config.json
mcpStartet den stdio JSON-RPC 2.0 MCP-Server.stdio-Stream

4. Die 5-stufige Verifikationsstrategie

Wenn Sie aufgefordert werden, "Alles zu testen" oder eine unbekannte Webanwendung zu auditieren:

  1. Stufe 1: Navigation & Routen: Durchsuchen Sie Navigations- und Footer-Links; stellen Sie sicher, dass keine 404-Antworten auftreten.
  2. Stufe 2: Interaktive Steuerelemente: Testen Sie Dropdowns, Akkordeons, Theme-Umschalter und Filtersymbole.
  3. Stufe 3: Formularvalidierungstrichter:
    • Happy Path: Gültige Eingaben senden → Erfolgsbanner oder Statusaktualisierung überprüfen.
    • Error Path: Leere Pflichtfelder senden → Inline-Validierungswarnungen überprüfen.
  4. Stufe 4: Authentifizierungslebenszyklus: Gültiger Login, Zurückweisung ungültiger Anmeldeinformationen, Sitzungspersistenz und Logout.
  5. Stufe 5: Kern-CRUD-Workflows: Element erstellen → prüfen, ob es aufgelistet ist; Element ändern → prüfen, ob es aktualisiert wurde; Element löschen → prüfen, ob es entfernt wurde.

Verwandte Skills