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

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

Термін · 27:20

Role locator

Playwright locator, який знаходить елемент за доступною роллю та зазвичай accessible name. Офіційна документація радить пріоритезувати user-facing attributes і explicit contracts на кшталт get_by_role().

Майструємо IDE під себе →

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

Shift Left review requirements

До початку реалізації знайдіть у вибраному requirement contradictions, missing states, duplicated rules і неявні security або data contracts. Для кожного ризику визначте найдешевший ранній evidence, який його підтвердить або спростує.
Таблиця requirement risk → рання перевірка → очікуваний evidence → відповідальна роль.

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

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

Намалювати test-aware service map

Вибрати один user flow і намалювати client, gateway, services, databases і brokers.
Позначити synchronous і asynchronous contracts, state setup і failure boundaries.
Для кожної boundary записати одну contract check і одну end-to-end check.
Одна діаграма, за якою видно, де готувати data і як локалізувати test failure.

Вступ до API-автоматизації →

Що змінилося після запису · 16:15

Чинний locator guidance Playwright

Поточна документація радить пріоритезувати user-facing attributes, особливо role locators, або explicit testing contracts через test ids. CSS/XPath залишаються fallback, коли ці варіанти непридатні.

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

Java Light · 2:28–4:00

Ланцюжки сервісів і технічний борг

Один і той самий service може бути producer для одного виклику і consumer для іншого. Тому response, яку отримує frontend, може залежати від кількох внутрішніх викликів. Чиста теоретична модель не завжди збігається з production: дедлайни змушують команду накопичувати technical debt і порушувати ідеальні межі. Тестувальник має досліджувати фактичні зв’язки, а не покладатися лише на назви сервісів.

Вступ до API-автоматизації →

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

Власні AI-інструменти та цінність системного мислення

[Дивитися з 04:30](https://www.youtube.com/watch?v=jAl2Qf8Zlyg&t=270s). На прикладах диктування, transcription, Papuga, app switcher, browser extension та event platform показано, що невеликі власні tools уже реально створювати без глибокого знання кожного framework. Але здатність сформулювати problem, описати state і перевірити output важливіша за саму генерацію. Для professional work syntax knowledge частково дешевшає, тоді як system design, contracts і розуміння причин defect-ів стають ціннішими.

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

Python мануфактура · Сесії: AMA та PMP · 11:05–17:28

SMS, OTP, billing, fraud і rate limits

[Дивитися з 11:05](https://www.youtube.com/watch?v=GwmAB4IvQUk&t=665s). SMS-провайдер на кшталт Twilio приховує різні carrier contracts, billing і правила блокування. Успішний тест на одному українському префіксі не доводить доставлення через Vodafone чи оператора іншої країни: окремі ranges можуть бути заблоковані через fraud. Атака на authorization endpoint може витратити платний SMS-бюджет або спричинити блокування application, тому потрібні rate limits на правильному рівні. Водночас надто грубе обмеження за IP заблокує весь офіс або тестове середовище. OTP із TTL одна хвилина функціонально непридатний у країні, де SMS приходить за дві хвилини. Для автоматизації часто потрібні test numbers або контрольований bypass, але вони не замінюють окремої end-to-end перевірки реального каналу.

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

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

Test trophy і правильний розподіл перевірок

У відео test trophy протиставляється механічній testing pyramid: в основі quality gates лежать static analysis і security checks, далі — швидкі unit tests, ширший шар integration tests і невелика кількість end-to-end scenarios. Ідея — інвестувати в той рівень, де система має найбільший ризик і де перевірка дає швидкий надійний сигнал. Важливе уточнення: не слід зменшувати unit coverage лише тому, що продукт використовує Spring, Django або готову database. Не потрібно тестувати код framework; потрібно unit-тестувати власну чисту domain logic, а integration tests залишити для mappings, transactions, SQL, serialization та зовнішніх contracts.

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

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

Agent review і нове cognitive load

[Дивитися з 15:00](https://www.youtube.com/watch?v=jAl2Qf8Zlyg&t=900s). Паралельні coding agents збільшують output, але потребують більше review. Engineer має одночасно думати про race conditions, ризики, completeness ticket-а, API/data contracts і місце transformation logic. Простий приклад — dates: backend може повернути timestamp, local date або значення з timezone; без єдиного контракту різні screens покажуть різні результати.

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

Java API-автоматизація · 15:00–35:00

Native чи cross-platform: ціна абстракції

Cross-platform stack пришвидшує MVP та shared feature delivery, але platform-specific capabilities і UI differences нікуди не зникають. Зі зростанням product команди часто все одно ділять iOS/Android ownership. Для тестів це означає: shared business scenarios не гарантують identical platform behavior. Потрібно розділити shared domain behavior і platform-specific contracts, а не будувати великий conditional E2E suite.

Стратегія тестування мультиплатформних систем →

Java API-автоматизація · 1:05:00–1:15:00

Testability і readable feedback

Mobile platforms обмежують custom attributes сильніше, ніж web. Тому testability будується разом із developers через accessibility identifiers/semantics і stable component contracts. Test report має бути зрозумілим розробнику: scenario, platform/device, build, request/response де доречно, screenshot/log і failure boundary. Швидкий feedback важливіший за кількість scripts.

Стратегія тестування мультиплатформних систем →

Design Patterns для автоматизаторів · 1:23:41–1:33:02

Scroll, virtualized lists і locator contracts

Mobile list часто рендерить лише елементи, видимі на screen, тому до п'ятого чи наступного item неможливо звернутися без scroll. Це відрізняється від звичайного HTML, де весь отриманий DOM часто вже доступний driver. Для пошуку радять `accessibilityId`, accessibility label, Android resource ID або content description, а не XPath. Тестувальник може сам додавати ці атрибути в application code і надсилати невеликий PR на review, бо hotfixes та custom components регулярно порушують навіть узгоджений locator guideline.

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