Cucumber Anti-patterns
Дає first-party warning про feature-coupled step definitions і duplication, центральні для критики уроку.
Чому критикують BDD і Cucumber → Першоджерело ↗Відеобібліотека
Пошук у нотатках курсу Java з переходом на потрібну секунду.
Дає first-party warning про feature-coupled step definitions і duplication, центральні для критики уроку.
Чому критикують BDD і Cucumber → Першоджерело ↗Step definitions, організовані навколо окремих feature files замість shared domain language; Cucumber описує цей підхід як anti-pattern через duplication і explosion of steps.
Чому критикують BDD і Cucumber →Portfolio heuristic із tests різної granularity: більше малих швидких checks і менше high-level tests, без duplication та без видалення рівня, який дає унікальний confidence.
Який рівень програмування потрібен automation engineer →Чистий код важко зрозуміти лише з правил. Спочатку інженер пише прямолінійне рішення, потім стикається з duplication, coupling і складним maintenance — і лише тоді бачить, яку конкретну проблему вирішує refactoring або design pattern. Patterns і code smells не застосовуються механічно: різні правила можуть тягнути рішення в протилежні боки. Потрібен контекст, щоб вирішити, коли достатньо простого API call, а коли справді потрібні controller, DTO, serialization та додаткові abstraction layers.
Типовий невдалий варіант: manual test cases уже містять steps, але автоматизатор повторно перекладає їх у Gherkin, а потім створює step definitions. Одна дія існує як feature text, regex/parameterized step і code implementation. Різні автори формулюють однакові steps по-різному, тому повторне використання швидко руйнується. Management може вимагати кількість automated scenarios або «читабельний для business report», але потім не відкривати ці reports. У такій ситуації Cucumber не забезпечує BDD: він лише додає maintenance cost команді automation. Ознака справжнього BDD — scenarios використовуються для спільних рішень, а не лежать наприкінці pipeline.