CommunityCodierung & Entwicklunggithub.com

svk1998/test-audit

Verwendet beim Schreiben, Hinzufügen, Ändern oder Überprüfen von Tests, beim Beheben eines Fehlers, der einen Regressionstest erfordert, oder beim Auditieren oder Bereinigen einer bestehenden Testsuite. Jeder neue oder geänderte Test wird auf das von ihm geschützte Verhalten geprüft, doppelte oder implementierungsgekoppelte Nachweise werden abgelehnt, test-only Produktionsseams werden entfernt und eine evidenzbasierte Bereinigung von minderwertigen Tests ohne Verfolgung von Löschzahlen wird geleitet.

Was ist test-audit?

Diese Skill-Anleitung für KI-Agenten (z.B. Claude Code, Cursor, Codex) definiert einen strengen Autoren-Gate-Prozess und einen Audit-Modus, um die Qualität von Testsuites zu verbessern. Im Autorenmodus müssen Entwickler vor dem Hinzufügen eines Tests vier Fragen beantworten, um sicherzustellen, dass der Test ein beobachtbares Verhalten oder einen unabhängigen Vertrag schützt, eine glaubwürdige Regression abdeckt, nicht dupliziert und keine test-only Produktionsseams erfordert. Der Audit-Modus konzentriert sich auf die kohärente Entfernung von minderwertigen Tests in Batches, die nach Produktionseigentümern gruppiert sind, ohne Löschzahlen zu jagen. Die Skill enthält klare Regeln für Junk-Muster (z.B. Ablehnung von Selbstvergleichen, Implementierungsannahmen, duplizierten Verträgen) und eine Aufbewahrungsgrenze, die Tests für unabhängige Verträge wie öffentliche APIs, SDKs, Sicherheit und Konfiguration schützt. Vor jedem Audit-Eingriff muss der Kandidatennachweis und der Workflow geprüft werden, und es wird empfohlen, vor dem Löschen die vollständigen Eigentümer, Aufrufer und die Historie zu inspizieren und aufzuzeichnen, welcher Nachweis erhalten bleibt.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/svk1998/test-audit-skill/tree/HEAD/skills/test-audit

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

Test Audit

Diese Fähigkeit hat zwei Modi:

  • Autoring. Der unten stehende Autoren-Gate gilt für jeden Test, den Sie hinzufügen oder ändern.
  • Auditieren. Entfernen Sie minderwertige Nachweise in kohärenten Batches, gruppiert nach Produktionseigentümer. Jagen Sie niemals Löschzahlen; das Ziel ist eine Suite, in der jeder Vertrag einen starken Eigentümer hat, nicht eine kleinere Anzahl.

Für eine Kampagne, die die gesamte Testoberfläche eines Subsystems auf einmal bereinigt, lesen Sie zuerst CAMPAIGN.md.

Autoren-Gate

Bevor Sie einen Test hinzufügen, beantworten Sie diese vier Fragen:

  1. Welches beobachtbare Verhalten, Invariante oder unabhängigen Vertrag schützt er?
  2. Welche glaubwürdige Regression würde ihn zum Scheitern bringen?
  3. Warum verfehlt der vorhandene Nachweis dies? Jeder Vertrag sollte einen primären Eigentümer an der stärksten Grenze haben. Ein Test auf einer anderen Ebene benötigt ein eigenes Transport- oder Lebenszyklusrisiko, um ihn zu rechtfertigen. Erweitern Sie vorhandene Tabellen und gemeinsame Fixtures anstatt fast identische Kopien hinzuzufügen, und konsolidieren Sie wiederholte Einrichtungen.
  4. Benötigt er einen Export, ein Flag, einen Wrapper oder einen Injektions-Hook, der keinen Produktionsaufrufer hat? Verschieben Sie in diesem Fall den Nachweis an die echte Grenze.

Unterstützende Regeln:

  • Verwenden Sie den Grenz- und Kostenleitfaden, um zu wählen, wo der Test lebt und was er kosten darf.
  • Ein Regressionstest muss vor dem Fix für den beabsichtigten Grund fehlschlagen und nach der Reparatur bestehen. Wenn Sie den Fehler vor dem Fix nicht zeigen können, geben Sie dies in Ihrem Bericht an.
  • Eine Regression an der eigentumsrechtlichen Grenze deckt einen Fehler ab. Wiederholen Sie ihn niemals auf jeder Ebene, die der Fehler durchquert hat.
  • Ein verhaltensbewahrendes Refactoring sollte den Test nicht brechen.

Junk-Muster

  • Lehnen Sie Selbstvergleiche, kopierte Inventare, Quelltext-Durchsuchungen, Implementierungs- oder Aufrufstruktur-Assertions, doppelte Verträge, test-only Seams, erwartete Werte, die vom zu testenden Subjekt generiert wurden, und Mocks, die das zu assertierende Verhalten liefern, ab.
  • Fixtures dürfen keine Quittungen oder Ordnungen erfinden, die der Eigentümer produzieren sollte, und dürfen keine Persistenz durch einen Pfad behaupten, den der Code nie schreibt.
  • Eine Negativkontrolle muss an der beabsichtigten Absicherung fehlschlagen, und der Name eines Tests muss mit dem tatsächlich ausgeübten Verhalten übereinstimmen.
  • Verwenden Sie bei der Prüfung von Kandidaten die vollständige Checkliste.

Aufbewahrungsgrenze

  • Behalten Sie Tests, die unabhängige Verträge schützen: öffentliche API, SDK, Protokoll, Konfiguration, Migration, Speicher, Sicherheit, Plattform, Voreinstellungen, Prompt-Bytes, generierte sprachübergreifende Ausgabe, Paketierung, Release, Architektur und beobachtbare Ordnung. Statisch oder langsam zu sein macht einen Test nicht entsorgbar.
  • Quelltext-Inspektion ist nur akzeptabel, wenn sie Refactorings überlebt, die nur Bezeichner betreffen, und einen unabhängigen benutzerseitigen Vertrag schützt.
  • Ein fehlschlagender Basistest kann ein Produktfehler sein, der repariert werden muss, kein Test, der gelöscht werden soll.

Audit und Validierung

  • Lesen Sie vor jedem Audit-Eingriff die Kandidatenevidenz und den Workflow. Überprüfen Sie die vollständigen Eigentümer, Aufrufer und die Historie und zeichnen Sie auf, welcher Nachweis erhalten bleibt, bevor Sie etwas löschen.
  • Löschen Sie veraltete Produktions-Seams zusammen mit ihren Tests. Optimieren Sie niemals auf Löschzahlen.
  • Bearbeiten Sie den Checkout nicht, während ein Testlauf läuft. Führen Sie den fokussierten Testbefehl des Projekts für den Eigentümer und die Geschwistertests aus, führen Sie die Checks des Projekts für geänderte Dateien aus und holen Sie dann eine Überprüfung ein, bevor Sie landen.
  • Berichten Sie die Ursachen, die erhaltenen Verträge, den Nachweis und seine Kosten, die geänderten Produktions- versus Testzeilen sowie Folgemaßnahmen. Committen, pushen oder landen Sie nur, wenn die Aufgabe Ihnen diese Autorität gibt.

Verwandte Skills