Was Claude Code in einem QA-Workflow leisten kann
- Unit-Tests für ein Modul im vorhandenen Stil und Framework des Projekts generieren.
- Einen Fehlerbericht in einen fehlschlagenden Regressionstest umwandeln und anschließend den Code korrigieren, bis der Test besteht.
- Fehlende Randfälle zu einer vorhandenen Testsuite hinzufügen (leere Eingaben, Unicode, Zeitüberschreitungen, Nebenläufigkeit).
- End-to-End-Tests für Playwright oder Cypress schreiben und sie mit einem Browser-MCP-Server gegen eine laufende Anwendung ausführen.
- Einen fehlgeschlagenen CI-Lauf untersuchen: das Protokoll lesen, die Ursache finden und die Korrektur vorschlagen oder anwenden.
- Einen Pull Request auf ungetestete Ausführungspfade prüfen und die Ergebnisse veröffentlichen.
Was es nicht kann, ist zu entscheiden, was wichtig ist. Es erreicht bereitwillig 100% Zeilenabdeckung mit Tests, die nichts Nützliches prüfen. Die Qualität der Ausgabe hängt von der Qualität der Anweisung ab. Deshalb beginnt die folgende Einrichtung mit der Gedächtnisdatei statt mit dem Prompt.
Einrichtung: Erklären Sie, wie die Tests ausgeführt werden
# CLAUDE.md
## Testing
- Unit tests: `npm test` (vitest). Files live next to the source as `*.test.ts`.
- E2E: `npx playwright test`, specs in `e2e/`. Needs the dev server: `npm run dev`.
- Always run the relevant test file after editing it. Do not mark a test `.skip` to make the suite pass.
- Prefer table-driven tests; one behaviour per `it()`; no snapshot tests for logic.
Dieser Block macht den Unterschied zwischen einem Agenten, der rät, und einem, der sich wie ein Kollege verhält, der den Leitfaden für Mitwirkende gelesen hat. Ergänzen Sie den gewünschten Stil für Assertions und die Dinge, die Sie niemals möchten (die Datenbank mocken, Tests überspringen, Test-Fixtures an falsche Ausgaben anpassen).
Tests aus einer Spezifikation oder einem Fehlerbericht generieren
> Read src/billing/prorate.ts. Write vitest tests covering the documented behaviour in
docs/billing.md, including month boundaries, leap years and a zero-day period.
Run them; if any fail, tell me whether the code or the doc is wrong before changing code.
> Bug #412: uploading a 0-byte file returns 500 instead of 400. Write a failing test that
reproduces it, then fix the handler so the test passes. Do not touch other tests.
Der letzte Satz jedes Prompts ist wichtig. „Sag mir, ob der Code oder die Dokumentation falsch ist“ verhindert, dass es stillschweigend das Verhalten an einen gerade selbst erfundenen Test anpasst; „ändere keine anderen Tests“ verhindert den klassischen Fehler, eine unbeteiligte Assertion zu ändern, damit alles grün wird.
Die Ausführen-Korrigieren-Schleife
Bitten Sie es, den Test nach dem Schreiben auszuführen. Es liest die Fehlerausgabe, nimmt Anpassungen vor und führt den Test erneut aus — meist in zwei oder drei Durchläufen. Achten Sie auf die Berechtigungsabfragen: Erlauben Sie Bash(npm test*) und Bash(npx playwright test*) einmal mit /permissions damit die Schleife nicht unterbrochen wird, und lassen Sie destruktive Befehle weiterhin bestätigen. Wenn es bei einem Test mehr als vier oder fünf Durchläufe braucht, stoppen Sie es; der Test prüft wahrscheinlich das Falsche und sollte von einem Menschen überprüft werden.
Ohne Benutzeroberfläche in CI
# generate regression tests for whatever changed, non-interactively
git diff --name-only origin/main...HEAD | grep -E 'src/.*\.ts$' > changed.txt
claude -p "For each file in changed.txt, add or extend tests for the changed behaviour. Run them." \
--allowedTools "Read,Edit,Write,Bash(npm test*),Bash(git diff*)" \
--max-turns 25 --output-format json > claude-qa.json
Der Print-Modus stellt niemals Fragen, deshalb muss alles, was er tun darf, im Voraus genehmigt werden mit --allowedToolsund --max-turns begrenzt die Schleife. Hinterlegen Sie ANTHROPIC_BASE_URL=https://aiprimetech.io und einen Gateway-Schlüssel als CI-Secrets, und der Lauf wird über Ihr Gateway-Guthaben oder Ihren unbegrenzten Tarif abgerechnet. Committen Sie das Ergebnis in einen Branch und lassen Sie es von einem Menschen prüfen — führen Sie generierte Tests nicht automatisch zusammen.
Bei jedem Pull Request: die GitHub Action
Die Claude Code GitHub Action führt dieselbe Schleife aus, wenn jemand einen Kommentar schreibt @claude bei einem Pull Request oder automatisch beim Öffnen. Eine auf QA ausgerichtete Anweisung im Workflow — „Prüfe diesen PR auf ungetestete Verzweigungen und füge Tests dafür hinzu“ — sorgt dafür, dass jeder PR eine erste Prüfung durchläuft, bevor ein Reviewer ihn sich ansieht. Die GitHub-Anleitung behandelt die Installation der App, die Workflow-Datei und die Kosten.
End-to-End-Tests mit Playwright
Zwei Stufen. Ohne Browser schreibt es Playwright-Spezifikationen anhand der Seitenstruktur und Ihrer Beschreibung, und Sie führen sie aus. Mit einem verbundenen Playwright-MCP-Server (/mcp) kann es die App öffnen, den Ablauf durchklicken, das DOM lesen und einen Test schreiben, der dem tatsächlich Gesehenen entspricht — mit deutlich zuverlässigeren Selektoren, allerdings auf Kosten einer längeren Sitzung. Beschränken Sie jede Browsersitzung auf einen Ablauf und /clear zwischen den Sitzungen; Screenshots und DOM-Dumps sind groß und werden bei jedem Schritt erneut gesendet.
QA-Durchläufe kostengünstig halten
- Verwenden Sie die Sonnet-Stufe; die Testgenerierung benötigt selten Opus. Die Haiku-Stufe eignet sich gut zur Triage von Logs.
- Lassen Sie es jeweils nur ein Modul oder einen Fehler bearbeiten. „Füge Tests für das gesamte Repository hinzu“ ist der teuerste Prompt überhaupt.
/compactnachdem jede Testdatei hinzugefügt wurde; die zuvor gelesenen Fehlerlogs sind dann nicht mehr nützlich.- Begrenzen Sie in CI mit
--max-turnsund führen Sie Tests nur für geänderte Dateien aus. - Für ein Team, das dies täglich nutzt, entfällt mit einem unbegrenzten Pauschaltarif die Frage nach den Kosten pro Token vollständig.
| Plan | Laufzeit | Preis |
|---|---|---|
| Unbegrenzt für 1 Stunde | 1 Stunde | $1 |
| Unbegrenzt für 24 Stunden | 24 Stunden | $10 |
| Unbegrenzt für 1 Woche | 1 Woche | $49 |
| Unbegrenzt für 15 Tage | 15 Tage | $89 |
Zuerst kostenlos ausprobieren
Neue Konten erhalten $5 kostenloses API-Guthaben mit dem Code CLAUDECODE — genug für einen Abend mit Claude Code auf Sonnet — danach Guthaben zum 7.69231-Fachen des Nennwerts.
export ANTHROPIC_BASE_URL=https://aiprimetech.io
export ANTHROPIC_API_KEY=your_keyHäufig gestellte Fragen
Kann Claude Code Unit-Tests schreiben?
Ja — im bestehenden Framework und Stil des Projekts, sofern CLAUDE.md diese vorgibt. Bitten Sie es, die Tests anschließend auszuführen, damit es seine eigenen Fehler behebt.
Kann Claude Code Playwright-Tests ausführen?
Ja. Es kann selbstständig Spezifikationen schreiben und mit einem Playwright-MCP-Server einen echten Browser steuern, um sie zu erstellen und zu überprüfen.
Eignet sich Claude Code für die QA-Automatisierung?
Sehr gut für die Testgenerierung, den vollständigen Zyklus aus Schreiben, Ausführen und Beheben sowie die Triage von CI-Fehlern. Es ersetzt nicht die Entscheidung darüber, was getestet werden muss, und generierte Tests müssen vor dem Merge weiterhin von Menschen geprüft werden.
Wie führe ich Claude Code in CI für Tests aus?
claude -p mit --allowedTools und --max-turns, Gateway- oder Anthropic-Zugangsdaten als Secrets und die Ausgabe in einen Branch committen, damit sie geprüft werden kann. Die GitHub Action kapselt denselben Ablauf für Pull Requests.
Claude Code über das Gateway nutzen
Dieselben Modelle, zwei Umgebungsvariablen, Guthaben zum 7.69231-Fachen des Nennwerts — oder ein unbegrenzter Pauschaltarif. Neue Konten: $5 kostenloses API-Guthaben mit dem Code CLAUDECODE.
API-Schlüssel erhalten Unbegrenzte Tarife ansehenAI Prime Tech ist ein unabhängiges API-Gateway und ist weder mit Anthropic verbunden noch wird es von Anthropic unterstützt oder gesponsert. „Claude“ und „Claude Code“ sind Marken von Anthropic. Die hier beschriebenen Funktionen von Claude Code entsprechen der öffentlichen Dokumentation von Anthropic zum Zeitpunkt der Erstellung und ändern sich häufig; Preise und Modelllisten auf dieser Seite werden aus den aktuellen Einstellungen dieses Gateways ausgelesen.