Python мануфактураJavaDesign Patterns для автоматизаторів

Терміни, нюанси та джерела

Термін · 9:30

Feature-coupled step definitions

Step definitions, організовані навколо окремих feature files замість shared domain language; Cucumber описує цей підхід як anti-pattern через duplication і explosion of steps.

Чому критикують BDD і Cucumber →

Java · Основний курс · 1:19:30–1:25:20

Case-insensitive перевірка тексту

Перевірка очікуваного тексту падає через різний регістр. Готовий `textToBePresentInElement` перевіряє входження, але не розв'язує вимогу case-insensitive comparison у потрібній формі. Для `textMatches` створюється `Pattern` із прапорцем `CASE_INSENSITIVE`; очікуваний текст передається до pattern як конкретне значення. Після цієї зміни тест проходить, а фінальний wrapper має окремі реалізації пошуку, actions і waits замість дублювання Selenium-викликів у Page Objects.

Selenium: очікування та мікрообгортки →

Java · Сесії: AMA та PMP · 3:10–6:20

Чому досвід поганого коду теж корисний

Чистий код важко зрозуміти лише з правил. Спочатку інженер пише прямолінійне рішення, потім стикається з duplication, coupling і складним maintenance — і лише тоді бачить, яку конкретну проблему вирішує refactoring або design pattern. Patterns і code smells не застосовуються механічно: різні правила можуть тягнути рішення в протилежні боки. Потрібен контекст, щоб вирішити, коли достатньо простого API call, а коли справді потрібні controller, DTO, serialization та додаткові abstraction layers.

Який рівень програмування потрібен automation engineer →

Java · Сесії: AMA та PMP · 21:00–24:00

Design system прискорює генерацію, але не гарантує consistency

[Дивитися з 21:00](https://www.youtube.com/watch?v=jAl2Qf8Zlyg&t=1260s). Foundations — colors, typography, spacing, radii, shadows — і reusable components дають AI контекст для створення нових screens. Проте implementation може відійти від запланованого design: інший modal pattern, невідповідний alignment або duplicated component. Потрібні structural і visual checks, а не лише факт, що сторінка відкрилася.

Vibe coding, склад команди та нова роль тестувальника →

Java · Сесії: AMA та PMP · 25:36–26:20

Як вивчати ООП послідовно

Абстрактні принципи стають зрозумілішими після практики: спочатку помітити code smells, потім розібрати базові механізми ООП, далі — patterns і SOLID. KISS, DRY та YAGNI варто застосовувати паралельно як питання до конкретного коду, а не як привід будувати структуру наперед. Найкраща перевірка розуміння — пояснити, який публічний контракт має клас, який стан йому справді потрібен і яку поточну проблему вирішує кожен виділений метод.

__init__, self, page та принципи ООП →
Запитати в чаті про «pattern» →