Test-Driven Development (Addy Osmani)
Wymusza RED-GREEN-REFACTOR i wzorzec 'Prove-It Pattern' oparty na testach dla każdej poprawki błędu lub zmiany zachowania.
Działa po konfiguracji
Co robi ten skill
Wymaga nieudanego testu przed wprowadzeniem nowej logiki lub poprawką błędu, przechodzi przez RED/GREEN/REFACTOR z przykładami TypeScript, i odtwarza błędy za pomocą nieudanego testu przed próbą poprawki. Obejmuje również piramidę testów, DAMP-nad-DRY, rzeczywistą implementację ponad mockami i listę kontrolną weryfikacji przed ukończeniem. Aktywuje się podczas implementacji logiki, poprawiania błędu lub modyfikowania istniejącego zachowania; wyraźnie pomija czysto konfiguracyjne/dokumentacyjne zmiany.
Raport z testu
Rzeczywiście uruchomiono wzorzec Prove-It Pattern na celowo umieszczonym błędzie kalkulatora rabatów w Node: testy odtwarzania zawiodły 3/3 przeciwko błędnej implementacji (100 USD przy 20% zwróciło 20 zamiast 80), a następnie przeszły 3/3 po poprawce — naprawdę silniejszy, oparty na dowodach artefakt niż cicha poprawka i zakończenie bazowego podejścia. Obniżono do 'setup', ponieważ SKILL.md wskazuje na `references/testing-patterns.md` dla szczegółowych wzorców, ale ten plik zwraca 404 i nie istnieje nigdzie w repozytorium, a wspomniany towarzysz 'browser-testing-with-devtools' to folder siostrzanej umiejętności, którego dosłowna kopia na umiejętność nie przeniesie.
Testowano: 2026-07-16 · Claude Code 2.x (agent harness)
Instalacja
git clone https://github.com/kevinnft/ai-agent-skills.git mkdir -p ~/.claude/skills cp -r ai-agent-skills/skills/addyosmani/test-driven-development ~/.claude/skills/addyosmani-tdd
Komendy i przykładowe prompty
/addyosmani-tddWymusza RED-GREEN-REFACTOR i wzorzec 'Prove-It Pattern' oparty na testach dla każdej poprawki błędu lub zmiany zachowania.
Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):
Write a failing test before you fix this discount calculator bugWalk me through red-green-refactor for this new checkout featureReproduce this reported bug with a test before we attempt a patch