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

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

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

Перевірити межі Chrome Recorder export

Записати короткий flow у DevTools Recorder.
Переглянути доступні export formats.
Порівняти JSON/Puppeteer output із Python Codegen output.
Зафіксовано, що built-in Recorder і Playwright Codegen мають різні target formats та use cases.

4. Playwright плагіни та codegen →

Що змінилося після запису · 18:10

Built-in Chrome Recorder export залишається не-Python орієнтованим

Поточна Chrome documentation перелічує JSON і Puppeteer-oriented built-in formats; інші formats можуть додаватися Recorder extensions. Прямий built-in Python/pytest export не заявлено.

4. Playwright плагіни та codegen →

Нюанс · 7:10

Generated code — лише draft

Recorder не знає командного locator contract і може пропустити responsive duplicates або accessible semantics. Кожен generated locator та assertion потрібно переглянути й запустити.

4. Playwright плагіни та codegen →

Термін · 18:10

Chrome DevTools Recorder

Вбудована Chrome DevTools panel для запису, replay, редагування, import і export user flows у поточній browser session.

4. Playwright плагіни та codegen →

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

Chrome DevTools Recorder

Вбудований Chrome DevTools Recorder записує дії в уже відкритій браузерній сесії. Сценарій можна повторно програти з нормальною або зміненою швидкістю, що корисно і для ручного тестування, і для швидкого заповнення форм. Recorder експортує сценарій переважно в JavaScript-орієнтовані формати. У демонстрації немає прямого Python-експорту, тому отриманий JSON або JavaScript доведеться конвертувати й обов’язково перевіряти. Перевага інструмента — replay у поточній сесії; недолік — це не готовий Python/pytest-тест.

4. Playwright плагіни та codegen →

Python мануфактура · Програма курсу · 7:10–9:00

Сторонній Recorder і неповний код

Інший recorder записує кроки login-сценарію та дозволяє обрати мову експорту. Згенерований приклад містить `goto`, `fill` і `click`, але не враховує дубльовані `#content-mobile` та `#content-desktop` блоки на сторінці Testomat.io. Через це локатор поля може знайти кілька вузлів і впасти у strict mode. Генератор бачить окрему дію, але не обов’язково розуміє контекст DOM або усталену архітектуру тестів. Код є чернеткою, а не готовим тестом.

4. Playwright плагіни та codegen →

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

Огляд Chrome extensions і Playwright CRX

Замість ручного написання кожного кроку можна спробувати browser extensions, які записують дії та експортують код. У Chrome Web Store є кілька інструментів: Playwright CRX, recorder-плагіни, locator assistants і генератори. Playwright CRX у демонстрації працює нестабільно: sidebar відкривається, але запис падає або зависає після взаємодії зі сторінкою. Плагін підтримує різні формати експорту, зокрема Python/pytest, але сам факт наявності формату не гарантує працездатного сценарію. Якщо інструмент поводиться так само нестабільно локально, його краще видалити, а не будувати на ньому процес.

4. Playwright плагіни та codegen →

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

Pick locator і генерація assertions

У Codegen можна перемкнутися з повного запису на Pick Locator і вибирати окремі елементи. Режими assertions генерують перевірки видимості, тексту або значення: ```python expect(page.get_by_text("Invalid email or password")).to_be_visible() ``` або перевірки вмісту контейнера через `to_contain_text`. Практичний цикл: записати короткий сценарій, скопіювати код у PyCharm, запустити його, а потім прибрати зайві дії та виправити локатори. Саме так автор свого часу використовував recorder для вивчення Playwright API.

4. Playwright плагіни та codegen →

Python мануфактура · Програма курсу · 22:15–24:08

Порівняння та робота з iframe

Під час експерименту на іншому сайті Codegen розпізнає взаємодію всередині `iframe` і генерує відповідний frame locator. Це ще один аргумент на користь офіційного інструмента як стартової точки. Підсумок уроку: для Python найпрактичнішим із перевірених варіантів є Playwright Codegen. Сторонні extensions можна досліджувати, але вони нестабільні або генерують зайву структуру. Будь-який recorder допомагає отримати початкові локатори та кроки, проте завершений тест усе одно потребує ручної перевірки, читабельних assertions і локаторів, узгоджених із реальною DOM-структурою.

4. Playwright плагіни та codegen →
Запитати в чаті про «recorder» →