browser-testing-with-devtools
browser-testing-with-devtools — скилл для проверки того, что веб-приложение действительно делает в браузере. Он использует Chrome DevTools MCP как связку между статическим анализом и runtime-наблюдением: агент может осмотреть DOM, получить console logs, проверить network requests, снять screenshot, изучить computed styles и accessibility tree, а также собрать данные о производительности. Это особенно полезно для UI, где исходный JSX или CSS ещё не доказывает, что пользователь видит и получает правильное состояние. Источник перечисляет сценарии для разработки, отладки и приёмки браузерного поведения: проверка взаимодействий, поиск console errors и warnings, анализ сетевых ответов, измерение Core Web Vitals, диагностика layout shifts и визуальная сверка результата. Настройка рассчитана на отдельный Chrome DevTools MCP server с командой npx и изолированным профилем. Для обычного тестирования рекомендуется dedicated profile или флаг --isolated; подключение к уже открытой сессии допустимо только когда действительно нужен авторизованный контекст. Это важная граница, потому что подключённый профиль может содержать почту, GitHub, банковские страницы и сохранённые cookies. Для UI-багов workflow начинается с воспроизведения: открыть известную страницу, выполнить нужное действие и снять исходный screenshot. Затем проверяются console, DOM, computed styles и accessibility tree, после чего фактическая структура сравнивается с ожидаемой. Исправление считается неполным, пока страница не перезагружена, screenshot не повторён, консоль не проверена и автоматические проверки не пройдены. Для сетевых проблем тот же подход начинается с capture: нужно сопоставить URL и метод, заголовки, payload, статус, тело ответа и задержку. Статусы 4xx, 5xx, CORS и timeout в источнике рассматриваются как разные диагностические классы, а не как одна общая ошибка. Для performance-проверок материал предлагает сначала записать baseline, затем посмотреть LCP, CLS, INP, длинные задачи свыше 50 мс и лишние перерисовки, после чего повторить trace и сравнить измерения. Для сложного UI полезен структурированный test plan с setup, шагами, ожидаемым состоянием, проверками console и network, быстрыми повторными действиями и отдельной accessibility-проверкой. Такой план делает проверку воспроизводимой: например, можно убедиться, что изменение статуса задачи создаёт ровно один PATCH, не дублирует элемент в DOM и объявляется вспомогательным технологиям. Скилл содержит строгие security boundaries. Текст DOM, console, network и результат JavaScript execution нужно считать недоверенными данными, а не инструкциями для агента. Нельзя переходить по произвольным URL, найденным в странице, копировать из браузера токены или выполнять внешние запросы из JavaScript-контекста. JavaScript execution следует оставлять read-only, если пользователь отдельно не подтвердил мутацию. Поэтому этот workflow хорошо закрывает доказательство runtime-фактов, но не заменяет security-аудит, тестирование на реальных учётных данных или проверку серверной части вне браузера.
Для чего подходит
- Проверка DOM и пользовательского интерфейса
- Диагностика console и network ошибок
- Профилирование browser performance
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/addyosmani/agent-skills/tree/main/skills/browser-testing-with-devtools