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

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

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

Review AI-generated vertical slice

Візьміть один feature flow і перевірте його через frontend, API та persistence boundaries. Зафіксуйте contract для time fields, кількість backend/provider calls, authorization states і system-level regression risks.
Короткий risk-based review із конкретними evidence та переліком перевірок, яких бракує.

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

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

Незалежні тести, test design і участь у плануванні

Тести мають бути незалежними за даними та станом. Залежна послідовність інколи може з'явитися як швидка перша ітерація, але це технічний борг: окремий тест не можна надійно повторити, а suite важче паралелити й діагностувати. Automation engineer не звільняється від базових QA-навичок: decomposition, impact analysis, risk assessment і test-design techniques. Межа між manual та automation розмивається, але повний перехід лише в один тип роботи атрофує іншу частину навичок. Участь на ранній фазі refinement допомагає заздалегідь визначити testability та потрібний рівень покриття.

Що має вміти та знати мідл автоматизатор →

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

Чому automation без test strategy не робить інженера senior

Уміння писати код саме по собі не означає middle або senior automation-рівень. Потрібні test strategy, impact analysis, risk management, test planning і вміння обрати правильний рівень перевірки. ШІ спрощує написання коду, але не вирішує за інженера, що варто автоматизувати і який feedback справді потрібен команді. Частину сценаріїв краще перевіряє автоматизація: великі масиви даних, інсталяції, API та повторювані комбінації. Інші властивості — usability, анімації, адаптивність і візуальна якість — часто потребують людської оцінки. Сильна роль поєднує обидва способи роботи.

Як manual QA перейти в automation →

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

Починати з product pain, а не з tool

Перше питання — що саме болить: release speed, regressions, platform drift, backend instability, device coverage чи migration. Далі з’ясовують product architecture, team ownership, roadmap і engineering maturity. Інструмент обирається після цього. Наприклад, планована migration з native на cross-platform або навпаки змінює test seams і робить speculative framework марним.

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

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

Чому немає універсальної AI team composition

[Дивитися з 00:00](https://www.youtube.com/watch?v=jAl2Qf8Zlyg&t=0s). Питання «скільки тестувальників потрібно на vibe coder-а» не має сталої відповіді: результат залежить від продукту, leadership, process, risk tolerance і рівня engineers. Автор також застерігає пояснювати всі скорочення лише AI: на budgets і hiring одночасно впливають revenue, inflation, investment priorities, supply chains та geopolitical uncertainty. Тому локальний headcount trend ще не доводить технологічну причинність.

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

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

Що робити, коли задачі оцінили без команди

[Дивитися з 14:25](https://www.youtube.com/watch?v=reaHS8_pZbU&t=865s). Якщо estimate нав’язано ззовні, команда не повинна регулярно рятувати його unpaid overtime: тоді management бачить лише формально виконаний plan і не отримує evidence, що estimation process зламаний. Потрібно фіксувати фактичний effort, невідомі залежності, скорочений testing scope та carry-over, а на retrospective вимагати участі виконавців в оцінюванні. Сильніша позиція виникає, коли кілька інженерів незалежно описують ту саму проблему фактами. Спочатку питання піднімають із tech lead/engineering lead, потім — на retro або з manager, якщо прямий канал не працює. Повідомлення має бути не «ми не хочемо встигати», а «за такого scope й available capacity безпечний результат потребує X; до deadline можемо завершити Y, решту переносимо або свідомо приймаємо перелічені ризики». У відео також звучить ідея зробити недооцінку видимою через накопичення нестабільних tests і technical debt. Навмисно ламати quality gate не варто: це створює product risk і послаблює аргументацію команди. Правильний еквівалент — не приховувати незавершену роботу, явно документувати deferred checks/debt, не позначати неперевірене як done і вимагати product decision про scope, deadline або quality.

Як працювати на спокійному проєкті та з нав’язаними оцінками →

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

Статичні акаунти як проблема testability

Найгірший варіант — один статичний користувач у локальному config. Він блокує паралельність і звужує набір доступних станів. Трохи кращий, але все ще дорогий процес — просити іншу команду вручну створювати набір акаунтів після кожного refresh тестового середовища. Якщо tester не може сам створити invoice, user або іншу передумову, перевірка залежить від чужого робочого часу. Це не просто незручність автоматизації, а властивість системи: feedback loop довгий, а критичні сценарії важко повторювати. Обмеження потрібно фіксувати як testability risk і обговорювати з командою продукту.

Юзер менеджмент та костилі з якими ви стикнетесь в житті →

Python мануфактура · Програма курсу · 27:00–29:32

Amend і межа force-push

Amend замінює останній коміт новою версією, що дозволяє додати забутий файл без окремого шумового коміту. Якщо попередній коміт уже запушено, його hash змінився, тому звичайний push відхиляється як non-fast-forward. У відео показано force-push у власну feature-гілку й окремо застережено не робити цього в `main`. Практичне уточнення: безпечніший варіант — `--force-with-lease`, і лише коли правила репозиторію дозволяють переписування гілки та ніхто інший не базує на ній роботу. Якщо це не погоджено, простіше додати новий виправний коміт.

2.1. відео, енв файл →

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

Комунікація обмежень і контрольовані набори даних

Якщо команда не може створити користувача в потрібному статусі або змінити його стан, неможливо гарантувати комбінаторне покриття критичних flows. Це треба формулювати через вплив: які сценарії не перевіряються, скільки триває підготовка та який ризик проходить у release. У регульованих системах інколи дозволений лише затверджений набір акаунтів. Тоді файл із ними залишається поза Git, передається через CI secret або контрольований config service, а тест обирає вільний профіль відповідного типу. Випадковий вибір без reservation не вирішує concurrency: потрібна оренда, блокування або розподіл акаунтів між workers.

Юзер менеджмент та костилі з якими ви стикнетесь в житті →
Запитати в чаті про «risk» →