Автоматизація на стероїдах: Як Playwright MCP та ШІ пишуть тести за вас
Привіт! Сьогодні ми зануримося у світ майбутнього тестування і дізнаємося, як можна автоматизувати саму автоматизацію за допомогою інструмента Playwright MCP.
На порядку денному:
- Що таке Playwright MCP і для яких завдань він підходить?
- Як встановити його у ваш редактор коду (VS Code або Cursor).
- Запуск першого простого тесту на реальному прикладі.
- Інтеграція в робочий проєкт і написання нових тестів.
- Погляд у майбутнє: що ще можна робити з цим інструментом?
Поїхали!
Що таке Playwright MCP?
Якщо говорити просто, Playwright MCP — це інструмент, що дозволяє керувати браузером за допомогою нейронних мереж та звичайних текстових команд. Ви пишете в чат, що потрібно зробити — наприклад, «відкрий такий-то сайт, натисни на кнопку, перевір текст», — а спеціальний ШІ-агент відкриває браузер і виконує всі ваші інструкції, надаючи в кінці звіт.
Де це може бути корисно?
- Автоматизація UI-перевірок: Швидке створення скриптів для рутинних перевірок.
- Створення автотестів: Генерація коду для Playwright на основі текстового опису.
- Пошук локаторів: Допомога у визначенні правильних селекторів для елементів на сторінці.
- Автоматичне дослідницьке тестування: Ви можете поставити агенту мету (наприклад, «знайди всі способи зламати форму реєстрації»), і він самостійно намагатиметься її досягти.
- Бізнес-сценарії: Будь-які завдання, що вимагають взаємодії з вебсайтами.
Підготовка до роботи
Для роботи нам знадобиться редактор коду VS Code або Cursor.
- Для VS Code: Обов’язковою є підписка на GitHub Copilot (бажано Pro-версія за $10/місяць). Безкоштовна версія має суттєві ліміти.
- Лайфхак: Якщо ви студент, можете отримати Pro-підписку безкоштовно за програмою від Microsoft.
- Для Cursor: Цей редактор коштує $20/місяць, і має
20-денний пробний період, якого цілком вистачить для знайомства.
Встановлення та налаштування
Процес встановлення елементарний.
- Перейдіть до офіційного GitHub-репозиторію Playwright MCP від Microsoft. github.com/microsoft/playwright-mcp
- Знайдіть розділ «Getting Started».
Для Cursor:
- Натисніть кнопку «Add to Cursor», а потім «Open Cursor».

- У вікні
MCP ToolsнатиснітьInstallнавпротиPlaywright MCP server. Готово!

Для VS Code:
- Натисніть «Install Server» та відкрийте посилання у VS Code, підтвердьте встановлення.
- Переконайтеся, що у вас встановлено розширення GitHub Copilot і ви увійшли у свій акаунт.
- Відкрийте панель команд (Ctrl+Shift+P) і введіть
MCP: List servers. Ви побачите, щоplaywrightмає статусstopped. - Запустіть його відповідною командою.
Практичний приклад № 1: Запускаємо простий тест
Давайте попросимо нашого ШІ-агента знайти на сайті Apple певну модель iPhone та перевірити її ціну.
Відкриваємо чат з Copilot у чистому проєкті та пишемо запит:
use play mcp tools to open apple.com and find iPhone 17 Pro Max with black color and 512 gb memory. also check price is 1499 dollars. if not throw an error.<br>Що відбувається далі?
- Агент запускає браузер і переходить на сайт Apple.
- Він знаходить у меню розділ «iPhone» і переходить на сторінку «iPhone 17 Pro».
- Агент розуміє, що ціни на сторінці немає, і сам натискає кнопку «Buy», щоб перейти до конфігуратора.
- Далі він намагається обрати колір. З першого разу не виходить, але він не здається, пробує інший підхід і досягає успіху! Це демонструє його здатність до адаптації.
- Він обирає пам’ять 512 ГБ.
- Нарешті, він перевіряє ціну. Справжня ціна відрізняється від очікуваної ($1499). Агент фіксує це і виводить у консоль помилку з деталями:
Price verification has failed. Expected price: 1499, actual price: 1599.

Практичний приклад № 2: Пишемо тести для існуючого проєкту
Тепер ускладнимо завдання. Візьмемо реальний проєкт (у відео це був onlytest.io — платформа для тестувальників) і попросимо агента написати тести для однієї зі сторінок.
Замість того, щоб давати йому готовий тест-кейс, ми попросимо його провести дослідницьке тестування.
Пишемо запит:
use play mcp to open text generator in our application and create test cases and necessary code for the functionality that we have on this screen.<br>Агент починає роботу:
- Відкриває потрібну сторінку в браузері.
- Взаємодіє з усіма елементами: змінює параметри, генерує текст, копіює його. Тобто, він вивчає функціонал.
- На основі свого дослідження він генерує три файли:
- Page Object з локаторами елементів.
- Файл з утилітами для генерації тестових даних.
- Файл із 29 готовими автотестами.
- Далі він запускає лінтер, знаходить 12 проблем у коді й самостійно їх виправляє.
- Після цього він запускає всі написані тести. 10 з них падають.
- Агент аналізує звіти про помилки і виправляє несправні тести.
- Фінальний запуск показує, що всі 29 тестів успішно проходять!
Поки ми пили каву, ШІ-агент виконав роботу, яка могла б зайняти кілька годин у досвідченого автоматизатора.
Важливі поради
1. Безпека перш за все
Ніколи не пишіть логіни та паролі у чаті з ШІ! Ці дані можуть бути передані на зовнішні сервери. Замість цього використовуйте змінні оточення.
Створіть у корені проєкту файл .env:
APP_USER=your_login<br>APP_PASSWORD=your_password<br>А в запиті посилайтеся на них:
login to my app as app user with password app password and add "use env vars"<br>Так ваші дані залишаться в безпеці.
2. Якість коду
Згенерований код не завжди ідеальний. Щоб покращити його, створіть у проєкті текстовий файл з описом стандартів кодування (наприклад, «не використовувати жорстко закодовані локатори, виносити їх у Page Object») і просіть агента дотримуватися цих правил.
Що далі?
Це лише початок. У майбутньому ми зможемо побудувати повністю автоматизований процес:
- ШІ генерує тест-кейси на основі вимог.
- Інший ШІ-агент (як Playwright MCP) пише автотести за цими кейсами.
- Система автоматично створює гілку в репозиторії, комітить код, запускає тести, створює Pull Request і надсилає його вам на рев’ю.
Це вже не наукова фантастика, а найближче майбутнє тестування.
11 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів