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

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

Практика · 6:00

Вибір automation stack від support matrix

Візьміть реальну browser analytics або письмову support policy продукту.
Позначте scenarios, які достатньо виконувати в Chromium/Firefox/WebKit.
Окремо позначте browser/vendor requirements, що потребують Selenium/Grid або cloud provider.
Запишіть очікувану topology, latency risks і мінімальний cross-browser suite.
Є коротке рішення Playwright-only або Playwright+Selenium, пов'язане з виміряною browser matrix, а не з популярністю інструмента.

3. Selenium vs Playwright - яка різниця →

Design Patterns для автоматизаторів · 45:50–58:36

Device analytics і перемикання оточень

Device matrix слід будувати за production analytics: OS versions, vendor/model, screen resolution, update rate та частка foldable devices. Ще корисніше зіставити ці дані з користувачами, які приносять основний revenue, щоб бюджет на реальні пристрої відповідав бізнес-ризику. Стандартні platform components зменшують ризик, але Samsung, Huawei та інші vendors можуть мати власні UI/OS особливості й різну доступність Google services. Для dev build варто додати простий environment switcher між dev, QA, stage і production endpoints, а logs збирати через Xcode/Android Studio.

Мобільне тестування та автоматизація →

Python мануфактура · Програма курсу · 0:00–6:00

Як Playwright керує браузером

Playwright підтримує тривалий двосторонній канал із browser process і через browser-specific protocol передає команди click, fill, navigation та читання стану. Locator actions мають auto-waiting: перед дією Playwright перевіряє релевантні actionability conditions — наприклад, видимість, стабільність, можливість отримати events і editable state. Це дозволяє тесту формулювати намір «виконай click для цього locator», а orchestration layer бере на себе очікування готовності елемента в межах timeout. Auto-waiting не усуває потребу в assertion: після дії все одно треба перевірити очікуваний результат. Основні browser engines Playwright — Chromium, Firefox і WebKit. WebKit наближає поведінку Safari, але не є повною копією всіх Safari/macOS/iOS інтеграцій. Branded Chrome або Edge можуть запускатися як Chromium channels, проте повну browser matrix потрібно визначати з реальної product analytics і support policy.

3. Selenium vs Playwright - яка різниця →

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

Що перевіряти замість повторного тестування СУБД

Якщо застосунок використовує зрілий framework і ORM, automation suite не має доводити, що framework у принципі вміє зберігати рядок. Цінність дають перевірки власної конфігурації: migrations, column types, precision, foreign keys, transaction boundaries, custom queries і mapping між database та API. Часто API або UI test уже опосередковано проходить database integration. Окремий DB assertion потрібен, коли зовнішня відповідь не доводить важливу властивість persistence — наприклад audit record, точність money value або асинхронний статус. Для dashboards, statistics і Big Data ключовою є не сама таблиця, а правильність агрегації: joins, filters, rounding, time zones і перетворення backend. Тут доцільно порівнювати результат із контрольованим dataset або незалежно обчисленим oracle, а не дублювати той самий SQL у тесті.

Автомтизація баз даних та що з тим робити та що знати →

Python мануфактура · Програма курсу · 10:45–15:40

Завантаження `storage_state` у новий context

Самого запису state недостатньо: шлях треба передати в `browser.new_context(storage_state=...)`. Browser options збираються у dictionary, який доповнюється лише тоді, коли шлях передано і файл існує. Урок порівнює два JSON states після перемикання проєкту. Окрім `Company ID`, можуть змінюватися timestamps, analytics cookies і backend session, тому ручне припущення про «єдину різницю» треба перевіряти, а не приймати наперед.

2.1. Storage state: практична реалізація, фікстури для ролей →

Python мануфактура · Сесії: AMA та PMP · 17:10–22:56

Device matrix і цінність mobile-досвіду

Device matrix не варто будувати лише за загальною популярністю моделей. Практичніший критерій — якими devices та OS versions користуються активні й прибуткові клієнти продукту. Це допомагає спочатку покрити ризик, який справді впливає на бізнес, а не рідкісні конфігурації. Android fragmentation створює додаткові ризики через vendor-specific changes, особливо на Samsung та інших кастомізованих збірках. Саме тому mobile automation experience цінується: інженер має розуміти platform lifecycle, distribution, permissions, observability і device-specific failures, а не лише вміти записати Appium steps.

Типи мобільних застосунків та мобільна автоматизація →

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

Де Cucumber усе ж доречний

Невеликий набір Gherkin scenarios може бути корисним як зрозумілий business report: користувач може оформити замовлення, створити event, виконати payment або отримати потрібну analytics. Це має сенс, якщо stakeholders справді читають report і scenarios є спільним контрактом. Для детальної діагностики developers зазвичай потрібні не довгі Gherkin steps, а точні request data, `curl`, response, credentials для test environment, frontend/backend logs і stack trace. Тому практичний висновок відео: використовуйте BDD для спільного уточнення поведінки, а Cucumber — лише там, де його додаткова мова реально має читача й покриває невеликий набір стабільних business flows.

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

Design Patterns для автоматизаторів · 23:22–32:29

Test builds, repositories і feature flags

iOS test builds поширюються через TestFlight, а build/distribution pipeline може використовувати App Center або platform developer consoles. Потрібно розрізняти dev build, прив'язаний до test/stage backend, і production-configured build, який перевіряють перед release. Тестувальнику рекомендовано мати read access до iOS/Android repositories, щоб бачити diff, перемикатися на feature branch і збирати зміни локально через Xcode чи Android Studio. Feature flags дають змогу вмикати функціонал для ролей, оточень або частини користувачів без розриву між backend і mobile releases. **Актуальність станом на 2026-08-08.** Visual Studio App Center завершив роботу 31 березня 2025 року; тимчасове продовження Analytics & Diagnostics закінчилося 30 червня 2026 року. Згадку у відео слід сприймати як історичну, а новий distribution/diagnostics workflow звіряти з актуальними сервісами платформи ([Microsoft Learn](https://learn.microsoft.com/en-us/appcenter/retirement)).

Мобільне тестування та автоматизація →
Запитати в чаті про «analytics» →