HAR-файл
как QA может сэкономить разработчику полдня
Хочу рассказать про штуку, которая экономит мне кучу времени на разборе багов, но почему-то про неё знают далеко не все, особенно ручные тестировщики. Называется HAR-файл. По сути это выгрузка всех сетевых запросов со вкладки Network в DevTools — большой JSON, в котором лежит вся история клиент-серверного общения: что страница запросила, что ответил бэкенд, какие данные ушли с фронта, какие пришли обратно. Полная картина взаимодействия, а не пересказ своими словами.
К чему это вообще. Есть классическая боль: прилетает баг, а в описании — видосик с экрана и фраза «вот тут сломалось, пофиксите». Ни ожидаемого результата, ни что именно происходит, ни на каких данных. И ты сидишь и гадаешь, что человек имел в виду и при каких условиях оно вообще воспроизводится. А если баг хоть как-то завязан на данные — что пришло с бэка, что улетело на бэк, какой статус у запроса — HAR закрывает добрую половину этих вопросов сразу. После нормального текстового описания это, наверное, вторая по полезности вещь, которую можно приложить к таске.
И самое приятное — снять его это пять секунд. Открываешь DevTools, идёшь во вкладку Network, перезагружаешь страницу, повторяешь действия, которые всё ломают, и жмёшь кнопку выгрузки — стрелочка вниз прямо на панели. Скачается всё, что в этот момент в Network висит. Дальше файл можно просто отдать разработчику или скормить нейронке — она по нему отлично находит, где именно отвалилось, потому что контекст узкий и конкретный, без лишнего шума.
Кстати, читать его вручную никто не заставляет. HAR импортируется обратно в тот же Network — рядом с экспортом есть импорт, перетянул файл в панель и смотришь все запросы в нормальном удобном виде, а не вычитываешь мегабайтный JSON построчно.
Про безопасность
Раньше HAR реально мог утащить с собой куки, токены и заголовки авторизации. Но начиная с Chrome 130 (осень 2024-го) браузеры на хромиуме по умолчанию вычищают из выгрузки куки, Set-Cookie и Authorization. То есть обычная кнопка экспорта теперь отдаёт уже подчищенный файл, и чтобы запихнуть туда чувствительное, надо специально лезть в настройки и включать галку. В обычном сценарии «QA снял HAR и кинул разработчику» паниковать не из-за чего. В абсолют я бы это всё же не возводил: токен или персональные данные могут прилететь в теле ответа, поэтому в публичный чат такое лучше не выкладывать, а коллеге или нейронке — спокойно.