Unit-Test-KI-Leitfaden: Null Halluzinationen
KI scheitert oft beim Unit-Testing. Sie erfindet Methoden. Sie erstellt falsche Mock-Strukturen. Sie verwendet nicht existierende Imports. Das passiert, weil der KI der strikte Kontext fehlt.
Sie können dies verhindern, indem Sie ein deterministisches System verwenden. Sie müssen vom Raten zum Durchsetzen übergehen.
Hier ist der Standard für halluzinationsfreie Unit-Tests über fünf große Tech-Stacks hinweg.
Der Tech-Stack-Standard
Wählen Sie eine Bibliothek pro Stack. Mischen Sie diese nicht.
- Node.js (NestJS/Express): Jest
- React.js: Vitest + React Testing Library
- Python: pytest
- Angular: Jest
- Laravel: Pest
Das Geheimnis: Projektspezifische Regeln
Standard-Prompts reichen nicht aus. Sie müssen Regeln direkt in Ihre IDE injizieren. Wenn Sie Cursor verwenden, nutzen Sie das Verzeichnis .cursor/rules/.
Erstellen Sie spezifische Regeldateien für jede Technologie:
unit-test-global.mdc: Legt das AAA-Muster (Arrange, Act, Assert) fest.unit-test-nestjs.mdc: Erzwingt TestingModule und jest-mock-extended.unit-test-react.mdc: Schreibtuser-eventanstelle vonfireEventvor.unit-test-python.mdc: Standardisiertpytest-mock-Muster.unit-test-laravel.mdc: Gewährleistet Pest-Syntax und die Verwendung von Mockery.
Diese Dateien fungieren als Vertrag. Die KI liest sie vor jedem einzelnen Prompt. Dies verhindert Halluzinationen direkt an der Quelle.
Der Unit-Test-Vertrag
Jeder Test muss diesen fünf Regeln folgen:
- Isolation: Mocken Sie alle externen Abhängigkeiten. Keine echten DB- oder HTTP-Aufrufe.
- Struktur: Verwenden Sie AAA. Kommentieren Sie Ihre Arrange-, Act- und Assert-Blöcke immer.
- Benennung: Verwenden Sie „sollte [Verhalten], wenn [Bedingung]“. Vermeiden Sie vage Namen wie „test 1“.
- Abdeckung: Testen Sie den Happy Path, Null-Inputs, Fehlerpfade und Edge Cases.
- Geschwindigkeit: Jeder Test muss in weniger als 100 ms laufen.
Implementierungsschritte
- Richten Sie Ihre Bibliothek und Konfigurationsdateien ein.
- Erstellen Sie Ihren Ordner
.cursor/rules/. - Fügen Sie eine
CLAUDE.md-Datei in Ihrem Projektstamm hinzu, die als permanentes Gedächtnis dient. - Legen Sie Schwellenwerte für die Testabdeckung in Ihrer CI-Pipeline fest (streben Sie 80 % der Zeilen an).
- Verwenden Sie Pre-Commit-Hooks, um sicherzustellen, dass kein ungetesteter Code in das Repository gelangt.
Hören Sie auf, die KI zu bitten, Tests zu schreiben. Fangen Sie an, der KI zu sagen, wie sie Tests schreiben soll.
Quelle: https://dev.to/bhaumik-viitor/unit-test-ai-guide-zero-hallucination-cross-stack-standard-4mb2
Optionale Lern-Community: https://t.me/GyaanSetuAi