| 10 мощных тестов с Chrome DevTools |
| 12.05.2026 00:00 |
|
Знаете ли вы, что Chrome DevTools предназначены не только для разработчиков, но и для тестировщиков? Для QA-специалиста важно не просто находить баги — понимание первопричин их появления и умение предложить возможные решения выводит тестирование на новый уровень. Если вы не пользуетесь Chrome, аналог Chrome DevTools с похожим функционалом можно найти в любом современном браузере, так что вы можете выполнять эти проверки в браузере по своему выбору. Чтобы максимально эффективно использовать Chrome DevTools, тестировщикам стоит иметь базовые знания HTML, CSS, DOM, JavaScript и уметь читать сетевые ответы. Что такое Chrome DevTools? Chrome DevTools — это мощный набор инструментов для инспектирования и отладки веб-сайтов и веб-приложений. Для тестировщиков он предоставляет удобный способ изучать элементы страницы, анализировать логи консоли, отслеживать сетевую активность и оценивать производительность страницы. Давайте рассмотрим, какие функции Chrome DevTools делают его незаменимым инструментом для тестировщиков, — на примере 10 тестов. Тест 1: Использование вкладки Elements для устранения проблемы с отступамиВкладка Elements состоит из двух панелей: HTML и CSS. Щёлкните правой кнопкой по любому элементу и выберите Inspect, или используйте стрелку в левом верхнем углу DevTools, чтобы выбрать элемент, наведя курсор. В правой панели отобразятся соответствующие CSS-стили. Здесь можно изменять HTML и CSS в реальном времени, не внося постоянных изменений в код. На скриншоте ниже - страница, на которой между разделительной линией и баннерным изображением появился нежелательный промежуток. Представим, что по дизайну баннер должен вплотную прилегать к линии.
Рисунок 1: Проблема с баннером, вызванная пространством между линией и изображением Наведите курсор на разделительную линию или изображение баннера, чтобы выделить область с пробелом, и выберите её. Ниже показано, как выглядит инспектирование этой области.
Рисунок 2: Наведение на верхнюю область для выделения свободного пространства Удаление свойства margin-bottom в CSS устраняет проблему с лишним отступом.
Как видно на трёх скриншотах выше, вы можете навести курсор на пространство, выделить его, проинспектировать и устранить проблему, отрегулировав margin или padding. Тест 2: Использование Inspect Element для устранения ошибки, мешающей навигации пользователяНа скриншоте ниже интерфейс содержит «точки-карусели» для переключения слайдов. Однако они отображаются лишь частично. Эти точки должны быть полностью видимыми, чтобы пользователь мог легко выбрать любую из них для перехода к следующему слайду. Область, в которой отображается слайд-шоу, имеет ограничение, скрывающее всё, что выходит за её границы (свойство CSS overflow-hidden). Из-за этого точки на краях слайдера обрезаются, и пользователю трудно их увидеть или использовать.
Рисунок 4: Наполовину скрытые точки карусели в слайдере Чтобы разобраться в проблеме, просто наведите курсор на содержимое — вы увидите зелёную тень overflow вокруг точек. После выбора элемента справа появятся связанные CSS-стили.
Рисунок 5: Наведение на элемент карусели и просмотр CSS-значения overflow-hidden Снимите галочку с атрибута overflow-hidden — и вы увидите, что проблема исчезает, при этом положение точек остаётся корректным.
Рисунок 6: Удаление атрибута overflow-hidden для исправления проблемы Тест 3: Использование вкладки Console для выявления ошибок JavaScriptВкладка Console — важнейший инструмент для обнаружения ошибок JavaScript: такие ошибки выделяются красным и легко находятся. Возможных типов ошибок сотни, и умение анализировать их приходит только с опытом. Иногда разработчики внедряют дополнительные скрипты, чтобы облегчить поиск специфических проблем. На проде по-хорошему ошибок в консоли быть не должно. Тем не менее, иногда проблемы на сервере или в сети могут залогироваться. На скриншоте ниже показан лог ошибки в консоли, связанный с некорректным текстом в диаграммах, вставленных в рабочую область. Однако такая ошибка возникает не у всех пользователей сайта. В подобных случаях клиенту нужно быстро предоставить хотфикс, а не предлагать ждать общего релиза.
Рисунок 7: Идентификаторы некорректных текстовых элементов диаграммы, отображённые в консоли Тест 4: Анализ ошибок в консолиНа скриншоте ниже по самому сообщению видно, что лог связан с проблемой безопасности в свойствах cookie. Если оставить такую ошибку без внимания, это может привести к проблемам с управлением сессиями, неверным данным аналитики, нестабильному поведению приложения и многому другому. Поэтому если сайт использует куки или политику одного источника (same-origin), эту ошибку необходимо проверить и исправить.
Рисунок 8: Ошибка в Console, связанная с проблемой безопасности в свойствах cookie Тест 5: Поиск битых ссылок с помощью пользовательского JavaScript в консолиВы можете запускать в консоли собственный JavaScript, чтобы находить битые ссылки, очищать кэш страницы и выполнять другие технические проверки. Ниже приведён фрагмент кода, который проверяет наличие битых ссылок. После вызова функции checkBrokenLinks() она найдёт и выведет в консоль все битые ссылки, выделив их красным цветом. Это особенно полезно при тестировании страниц, недоступных из внешних сетей. // Функция, проверяющая, работает ли ссылка Тест 6: Использование вкладки Network для анализа кодов ошибок, вызванных действиями браузераВкладка Network фиксирует все запросы, которые выполняются при каждом действии на странице, и показывает важные статус-коды — по ним можно понять, успешно ли прошёл запрос или произошла ошибка. На скриншоте ниже показан статус-код HTTP 404 для файла favicon.png. Это означает, что файл, на который ведёт запрос, отсутствует. При выборе записи по этому файлу вы увидите дополнительные сведения — заголовки, ответы сервера и прочие данные, которые помогут в диагностике. HTTP-кодов множество — если вы хотите эффективно использовать вкладку Network, вам стоит разобраться в них подробнее.
Рисунок 9: Код ошибки HTTP 404 для favicon.png Тест 7: Просмотр данных, передаваемых элементам действияВо вкладке Network можно также исследовать скрытую информацию. На скриншоте ниже видно телефонный номер и адрес электронной почты, которые пользователь ввёл в поля ввода. Если данные по какой-то причине не были собраны или отправлены, вы сразу увидите, что полей в запросе нет.
Рисунок 10: Телефон и e-mail, связанные с иконками в правом верхнем углу страницы Тест 8: Проверка офлайн-функциональности без фактического отключения от сетиВы можете перевести браузер в офлайн-режим прямо во вкладке Network. Для этого выберите No Throttling → Offline. Эта функция полезна, когда нужно протестировать поведение приложения без доступа к сети, но вы не хотите физически отключать своё устройство от интернета.
Рисунок 11: Выбор режима Offline в списке No Throttling Тест 9: Использование вкладки Application для изучения потока данныхВо вкладке Application можно глубже исследовать то, что происходит с данными внутри браузера. Там можно делать многое – от очистки кэша до анализа indexDB, где можно взглянуть на связанные с UI-уровнем приложения данные. Однако чтобы правильно интерпретировать данные в этой вкладке, полезно иметь базовое представление о типе используемой базы данных. На скриншоте ниже показан аутентификационный токен, сохранённый в локальном хранилище приложения. Такие данные могут быть полезны для тестирования - например, при автоматизации функциональности работы с диаграммами.
Рисунок 12: Получение токена аутентификации для выполнения автоматизированных тестов Тест 10: Извлечение userID для выполнения тестов с данными конкретного пользователяНа следующем скриншоте отображён userID созданного рабочего пространства на вкладке Application. Такая информация полезна, если необходимо провести тестирование, связанное с базой данных или операциями, выполняемыми от имени конкретного пользователя.
Рисунок 13: Получение userID авторизованного пользователя ЗаключениеВкладки Elements, Console, Network и Application особенно полезны для тестировщиков веб-приложений и дают бесценную информацию, позволяя выйти за пределы простого выявления багов. Освоив Chrome DevTools (или аналогичные инструменты в других браузерах), тестировщики могут значительно повысить эффективность своей работы, быстрее находить и диагностировать ошибки, а также помогать команде обеспечивать более стабильный пользовательский опыт. Дополнительная информация
|