Test Guard
Revize AI-napsaných testů proti devíti pravidlům: hranice mocků, žádné duplicitní nebo prázdné testy
Otestováno · Funguje
Co umí
Test Guard je revizní průchod pro testovací kód, který agent právě napsal nebo změnil, aplikující devět pravidel: mockovat pouze na hranicích systému, nikdy nemockovat dataclassy nebo stavové objekty, parametrizovat téměř duplicitní testy, mazat testy, které nic nezachytí, pojmenovávat testy podle scénáře a udržovat produkční regresní testy. Načítá referenci specifickou pro stack pro pytest, Jest/Vitest, PHPUnit/Pest nebo LLM aplikace, poté hlásí porušení jako číslo pravidla plus umístění, příčinu a opravu. Spouští se na požadavky na psaní, přidávání nebo revizi testů a na rozdíly dotýkající se test_*.py, *Test.php, *.test.ts, *_test.go nebo souborů pod tests/ a __tests__/.
Testovací report
Klonoval jsem repozitář do dočasného HOME a potvrdil, že kopie umístí SKILL.md do ~/.claude/skills/test-guard/SKILL.md; frontmatter se parsuje s name+description (815 znaků) a všechny čtyři soubory, na které tělo odkazuje (references/pytest.md, jest.md, phpunit.md, llm-app-testing.md), vrátily HTTP 200; žádné curl|sh, base64 ani text dotýkající se pověření nikde. Úkol: Napsal jsem 30řádkový Python modul pro ceny plus záměrně AI-stylizovaný 9testový pytest soubor (MagicMock zastupující dataclass Cart, @patch na privátní _tax_rate, assert_called_once na log.info), poté jsem vytvořil základní revizi bez dovednosti a druhou revizi podle SKILL.md a references/pytest.md. Základní revize zachytila duplikaci parametrizace, slabé pojmenování a chybějící aritmetické aserce, ale nikdy si nevšimla mockované dataclass a nazvala test_cart_dataclass_sets_attributes „nízká hodnota, ale neškodná; její ponechání nic nestojí“; revize dovednosti označila stejný test jako smazání podle Pravidla 4, označila MagicMock Cart jako Pravidlo 8 napříč třemi testy a zkrátila 9 testů na 4 s verdiktem „neslučovat“ a přepsanou sadou, jejíž očekávané součty (119.00 DE, 107.10 s 10% kódem) jsem ověřil spuštěním modulu. Spouštěcí fráze — mělo by se spustit: „Právě jsem napsal testy pro platební modul, zkontrolujte je, než je commitnu“, „Přidejte unit testy pro src/parser.ts pokrývající cestu s chybným vstupem“, „Zde je PR diff dotýkající se tests/test_orders.py, je něco špatně s těmito testy?“; nemělo by se spustit: „Moje pytest sada selhává s chybou fixture ScopeMismatch, pomozte mi ji ladit“, „Zkontrolujte tento refaktor třídy OrderService“ — 5/5 správně. Explicitní klauzule DO NOT USE v popisu čistě odklání obě negativa.
Testováno: 2026-07-21 · Claude Code 2.x (agent harness)
Instalace
git clone --depth 1 https://github.com/amElnagdy/guard-skills.git /tmp/test-guard-src mkdir -p ~/.claude/skills cp -R /tmp/test-guard-src/skills/test-guard ~/.claude/skills/test-guard # No dependencies, no API keys, no scripts — SKILL.md plus 4 markdown references. # The repo also ships clean-code-guard, docs-guard, wp-guard, woo-guard in /tmp/test-guard-src/skills/. # CLI alternative (installs a copy, same result): npx skills add amElnagdy/guard-skills --skill test-guard # Usage: after your agent writes tests, say "Use test-guard on the tests you just wrote."
Příkazy a ukázkové prompty
/test-guardRevize AI-napsaných testů proti devíti pravidlům: hranice mocků, žádné duplicitní nebo prázdné testy
Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):
Review these tests before I commit themWrite tests for this new functionCheck this test file for common testing mistakes