
Claude-скиллы #3: тест после кода — тест под код, а не под задачу
Тест, написанный после реализации, почти всегда проверяет то, что код уже делает — не то, что он должен делать. Баг в логике проскальзывает мимо, потому что тест написан по мотивам той же логики. Skill test-driven-development меняет порядок: сначала падающий тест на нужное поведение, потом минимальный код, который его зеленит. def test_discount_applies_only_above_threshold(): assert calc_discount(cart_total=500) == 0 assert calc_discount(cart_total=1500) == 150 Тест падает первым — функции calc_discount ещё нет. Код пишется под конкретно эти два случая, а не абстрактную “скидочную систему вообще”. В git-логе видно: коммит с тестом идёт раньше коммита с кодом. ...