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

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

Python мануфактура · Програма курсу · 1:30–2:30

Повторне використання builder-функцій

`build_login_payload(email, password)` централізує структуру request body й прибирає дублювання inline dictionaries. Назва має описувати одну дію, а повернений об’єкт можна використати в кількох тестах. Секрети не слід виводити в logs навіть у допоміжних функціях.

6 функції →

Python мануфактура · Програма курсу · 7:30–8:04

`match/case` і вибір простої конструкції

`match/case` зручний для багатьох чітких варіантів на кшталт окремих auth codes, але для двох-трьох ranges звичайний `if/elif` часто простіший. Розширені приклади пропонують додати assertions і exceptions та подивитися, як змінюється failure output.

3 умови →

Python мануфактура · Сесії: AMA та PMP · 15:00–19:35

Коли приватний helper покращує код

Внутрішня функція корисна, коли складна бізнес-дія складається з кількох неочевидних технічних кроків або коли розрахунок потребує предметної назви. Вона зменшує деталі у публічному методі й показує, що не є частиною API класу. Водночас Page Object має залишатися простим. Не варто ділити кожен рядок на helper: виділення виправдане, коли воно називає реальну дію або приховує поточну складність.

__init__, self, page та принципи ООП →

Python мануфактура · Програма курсу · 16:15–23:35

Побудова читабельних CSS-селекторів

Один елемент можна знайти різними еквівалентними способами: ```css #search [id="search"] input#search ``` Якщо простого атрибута недостатньо, умови комбінуються: ```css a.common-btn.primary[href*="new"] ``` `href` часто стабільний, бо відповідає маршруту застосунку. Водночас найкоротший селектор не завжди найкращий: трохи довший вираз може краще пояснювати на code review, яку саме кнопку він описує. Пріоритет — однозначність і читабельність, а не мінімальна кількість символів.

3. Селектори та пошук елементів →

Python мануфактура · Сесії: AMA та PMP · 16:30–21:30

Читабельний CSS як практичний fallback

Якщо стабільного test ID або accessible name немає, припустимий короткий CSS selector через зрозумілий parent і тип дочірнього елемента. Locator повинен читатися; складний вираз варто сховати за змінною з предметною назвою. Не слід використовувати generated hashes, випадкові class names, positional indexes або повні DOM paths. Якщо ID має стабільний префікс і випадковий suffix, можна шукати за контрольованим частковим збігом.

Пріоритети селекторів та їхня надійність →
Запитати в чаті про «readability» →