A

test-driven-development

von addyosmani

Das test-driven-development-Skill hilft dir, Code zu ändern, indem du zuerst einen fehlschlagenden Test schreibst und dann nur die kleinste nötige Korrektur vornimmst, damit er besteht. Nutze es für Logikänderungen, Bugfixes, Regressionen und Grenzfälle, bei denen ein belastbarer Nachweis wichtiger ist als ein plausibler Patch.

Stars18.8k
Favoriten0
Kommentare0
Hinzugefügt21. Apr. 2026
KategorieSkill Testing
Installationsbefehl
npx skills add addyosmani/agent-skills --skill test-driven-development
Kurationswert

Dieses Skill erreicht 84/100 und ist damit ein solides Verzeichnislisting für Nutzer, die einen agententauglichen TDD-Workflow mit klaren Auslösern und Schritt-für-Schritt-Anleitung suchen. Es sollte Agenten helfen, das Skill mit weniger Rätselraten auszuwählen und auszuführen als ein generischer Prompt, auch wenn es sich weiterhin um ein einzelnes Skill-File ohne unterstützende Skripte oder Referenzen handelt.

84/100
Stärken
  • Starke Triggerbarkeit: Die Beschreibung zielt ausdrücklich auf neue Logik, Bugfixes und Verhaltensänderungen ab.
  • Operativ klarer Workflow: Der RED-GREEN-REFACTOR-Zyklus wird nachvollziehbar erklärt, ebenso wann er sinnvoll ist und wann nicht.
  • Gute praktische Tiefe: Der Inhalt ist umfangreich, mit mehreren Überschriften, Einschränkungen und Codebeispielen statt Platzhaltertext.
Hinweise
  • Keine Support-Dateien und kein Installationsbefehl: Nutzer erhalten nur SKILL.md, daher hängt die Nutzung davon ab, das Dokument genau zu lesen.
  • Als experimentell/getestet markiert und ohne externe Referenzen, sodass das Vertrauen vor allem auf dem Inhalt selbst statt auf Tooling oder Zitaten beruht.
Überblick

Überblick über die test-driven-development-Fähigkeit

Die test-driven-development-Fähigkeit hilft dir, Code zu ändern, indem du Verhalten zuerst nachweist und dann nur die kleinste Korrektur implementierst, die den Test bestehen lässt. Sie eignet sich besonders für Entwickler und Agenten, die an Logikänderungen, Bugfixes, Edge Cases und Regressionen arbeiten, bei denen „sieht richtig aus“ nicht reicht. Wenn du die test-driven-development skill nutzen willst, um Rätselraten zu reduzieren, zeigt dir dieser Leitfaden, wann sie passt und was sie tatsächlich verbessert: sicherere Änderungen, klarere Anforderungen und weniger Zurückrudern nach einem ersten Patch.

Wofür diese test-driven-development-Fähigkeit gedacht ist

Nutze test-driven-development, wenn sich das Verhalten einer Aufgabe ändert: neue Funktionen, geänderte Bedingungen, die Reproduktion eines Fehlers oder alles, was bestehenden Code stillschweigend brechen könnte. Besonders nützlich ist sie, wenn das Repo bereits Tests hat und du den Agenten innerhalb des vorhandenen Beweissystems arbeiten lassen willst, statt Verhalten von Grund auf zu erfinden.

Was sie anders macht

Der zentrale Mehrwert ist Disziplin: erst einen fehlenden Test schreiben, dann nur das implementieren, was der Test belegt. So bekommt der Agent ein konkretes Ziel, erkennt fehlende Annahmen früh und bleibt bei der Korrektur eng am Problem. Für test-driven-development for Skill Testing ist das oft der Unterschied zwischen einem plausiblen Patch und einem verifizierten.

Wann sie nicht gut passt

Nutze diese Fähigkeit nicht für Änderungen ohne Laufzeitverhalten: reine Textkorrekturen, statische Inhaltsupdates oder reine Config-Anpassungen. Wenn das Projekt kaum oder gar keine Testabdeckung hat, kann die Fähigkeit trotzdem helfen, aber die Einführung dauert länger, weil eventuell erst das Test-Setup stehen muss, bevor sich der Workflow auszahlt.

So verwendest du die test-driven-development-Fähigkeit

Installieren und die Fähigkeit prüfen

Nutze den Repository-Installationsflow für test-driven-development install:

npx skills add addyosmani/agent-skills --skill test-driven-development

Nach der Installation starte mit SKILL.md. In diesem Repository gibt es keine zusätzlichen rules/, resources/ oder scripts/-Ordner, auf die du dich stützen könntest. Die Hauptaufgabe besteht also darin, die Skill-Datei sorgfältig zu lesen und ihre Hinweise auf deine Codebasis zu übertragen.

Ein vages Ticket in einen testbaren Prompt verwandeln

Die beste test-driven-development usage beginnt mit einer Aussage über Verhalten, nicht mit einer Lösungsvorgabe. Gute Eingaben klingen etwa so: „Füge einen fehlgeschlagenen Test für die Validierung leerer E-Mails hinzu und implementiere dann die minimale Korrektur in src/auth.ts.“ Schwache Eingaben klingen so: „Mach Login besser.“ Nenne das beobachtbare Ergebnis, die Datei oder das Modul, falls bekannt, und das Regression-Risiko, das dir wichtig ist.

Dem RED-GREEN-REFACTOR-Zyklus folgen

Nutze die Skill als Workflow: zuerst einen Test schreiben, der beim aktuellen Code fehlschlägt, dann die kleinste Codeänderung, die ihn bestehen lässt, danach nur refaktorieren, wenn der Test weiterhin grün bleibt. Wenn sich der Fehler schwer reproduzieren lässt, halte an und schärfe den Testfall, bevor du die Implementierung anfasst. Die Fähigkeit funktioniert am besten, wenn der fehlschlagende Fall spezifisch genug ist, um den Bug tatsächlich zu belegen.

Zuerst die richtigen Dateien lesen

Für dieses Repo ist die wichtigste erste Lektüre SKILL.md. Prüfe danach das lokale Test-Setup in deinem Zielprojekt: Test-Runner-Konfiguration, bestehende Testkonventionen und die nächsten Tests rund um den Code, den du ändern willst. Wenn das Projekt bereits starke Muster hat, halte dich exakt daran; wenn nicht, halte den Test minimal und eindeutig.

FAQ zur test-driven-development-Fähigkeit

Ist das nur etwas für erfahrene Entwickler?

Nein. Einsteiger können test-driven-development nutzen, brauchen aber einen klaren Startpunkt: ein Verhalten, ein fehlgeschlagener Test, eine minimale Korrektur. Die Fähigkeit lässt sich bei kleinen Bugfixes leichter lernen als bei breiter Feature-Arbeit.

Worin unterscheidet sich das von einem normalen Prompt?

Ein normaler Prompt kann einfach nach Code fragen, der „funktioniert“. Diese Fähigkeit verlangt einen Beweis. Der test-driven-development guide zwingt den Agenten dazu, Erfolg als bestandenen Test zu definieren, was Mehrdeutigkeiten reduziert und die Review erleichtert.

Wann sollte ich sie nicht wählen?

Lass sie bei Dokumentation, Formatierung oder Änderungen weg, die sich nicht als Laufzeitverhalten ausdrücken lassen. Verzichte auch darauf, wenn das Projekt keinen brauchbaren Test-Harness hat und du nur eine schnelle, nicht-verhaltensbezogene Änderung brauchst.

Passt sie zu allen Ökosystemen?

Prinzipiell ja, aber die genauen Testkommandos, Assertions und die Dateistruktur hängen vom Stack ab. Die Fähigkeit ist framework-agnostisch; deine lokalen Repo-Konventionen entscheiden, ob du Jest, Vitest, pytest, JUnit oder einen anderen Runner verwendest.

So verbesserst du die test-driven-development-Fähigkeit

Gib dem Agenten einen präziseren Fehlerfall

Die stärksten Eingaben nennen das fehlerhafte Verhalten, das erwartete Ergebnis und die Randbedingung. Beispiel: „Wenn parseDate("") läuft, soll es InvalidDateError werfen; erst den Test hinzufügen, dann den Parser patchen.“ So vermeidet die test-driven-development skill vage Implementationsannahmen.

Teile den vorhandenen Teststil mit

Nenne benachbarte Testdateien, Namensmuster und vorhandene Helpers oder Fixtures, die das Projekt bereits verwendet. Wenn das Repo für ähnliche Fälle table-driven tests, Mocks oder Integrationstests nutzt, sag das dazu. Die lokale Konvention zu übernehmen erhöht das Vertrauen und sorgt dafür, dass das Ergebnis gut einfügbar bleibt.

Achte auf die typischen Fehlermuster

Die größten Fehler sind, vor dem Test mit der Implementierung zu beginnen, einen Test zu verwenden, der ohnehin schon besteht, und die Korrektur über den fehlschlagenden Fall hinaus aufzublähen. Wenn die erste Ausgabe zu breit ist, verlange den kleinstmöglichen fehlgeschlagenen Test und nur einen minimalen Patch. Das ist meist der schnellste Weg zu zuverlässiger test-driven-development usage.

Mit Belegen iterieren, nicht mit Vermutungen

Bitte nach dem ersten Durchlauf um den nächsten Belegpunkt: einen weiteren Edge Case, einen Regressionstest oder einen Refactor, der weiterhin bestehende Tests bestehen lässt. Wenn der Bug subtil ist, fordere eine Vorher/Nachher-Zusammenfassung des Verhaltens plus den exakten Testnamen an, der ergänzt werden soll. So bleibt der Workflow an beobachtbarem Verhalten statt an Annahmen verankert.

Bewertungen & Rezensionen

Noch keine Bewertungen
Teile deine Rezension
Melde dich an, um für diesen Skill eine Bewertung und einen Kommentar zu hinterlassen.
G
0/10000
Neueste Rezensionen
Wird gespeichert...