qatoolqa.ru

О проекте

qatoolqa.ru это 25 инструментов для ручного тестирования. Они считают прямо в браузере: токен, ответ API, дамп или конфиг остаются во вкладке. За этим следит сам браузер, ниже написано как.

Что это

Мелкие штуки, которые тестировщику нужны каждый день: разобрать JWT, привести JSON в читаемый вид, сравнить два ответа, собрать пачку тестовых пользователей с правильными ИНН и СНИЛС, починить кракозябры, проверить контраст, отформатировать SQL. Один инструмент занимает одну страницу. Каждая объясняет, что показано, почему результат может не сойтись и как это выглядит снаружи. Регистрации и лимитов нет.

Почему всё считается в браузере

В такие инструменты несут рабочее: токен с боевого стенда, ответ с персональными данными, кусок дампа. У многих на руках NDA или внутренний регламент. Отправлять такое на чужой сервер, чтобы просто посмотреть, нельзя. Поэтому содержимое полей сайт никуда не отправляет. Разбор, форматирование, сравнение и генерация выполняются во вкладке.

Держится это не на моём честном слове. Страницы отдаются с заголовком Content-Security-Policy, в котором разрешён один адрес: mc.yandex.ru, счётчик посещений Яндекс.Метрики. Туда уходит статистика: какая страница открыта, откуда пришли, с какого устройства. Содержимое полей туда не попадает, запись действий и ввода в счётчике выключена. Любой другой запрос наружу браузер заблокирует сам, даже если он вдруг появится в коде, и покажет ошибку в консоли.

Убедиться можно за минуту. Откройте любой инструмент, DevTools, вкладка Network. Введите что угодно и нажмите кнопку. Новых запросов к сайту не появится. Единственный чужой адрес в списке будет mc.yandex.ru, и текста из полей в его запросах нет. Страница один раз забирает свои файлы, шрифты, стили и скрипты, и дальше живёт сама. После первого открытия сайт работает и без сети.

Про библиотеки

Большая часть инструментов была написана с нуля. Четыре используют открытые библиотеки: тексты сравнивает jsdiff, SQL форматирует sql-formatter, User-Agent разбирает ua-parser-js, по JSON Schema проверяет @cfworker/json-schema. Все они лежат на этом же сайте и в сеть не ходят. Для приватности такая библиотека ничем не отличается от шрифта.

Зачем я это сделал

По работе постоянно нужны мелкие штуки, и для каждой был свой сайт. В последнее время пользоваться ими становится всё сложнее: один открывается еле как, у другого поверх поля висит баннер, третий просит зарегистрироваться, чтобы показать мой же токен. Я хотел, чтобы всё это было на одном сайте и открывалось откуда угодно. Такого места не нашёл, поэтому сделал сам. Новые инструменты появляются по мере того, как они нужны мне в работе. Идеи и замечания приносите в группу, ссылка в разделе «Связь».

Связь

Нашли ошибку, не сошёлся результат, не хватает инструмента? Напишите в группу в Telegram: t.me/qatoolqa. Особенно полезны примеры, на которых инструмент ошибся. Из них получаются проверки, и ошибка больше не возвращается.

Чего сайт не делает

Не собирает содержимое полей. Не требует аккаунта. Не показывает рекламу. Не ограничивает число запросов. Что именно хранится в вашем браузере и что сайт знает о посещениях, написано на странице «Приватность».

Название и адреса

qatoolqa читается одинаково с обеих сторон: QA, tool, QA. Инструменты для тестировщиков от тестировщика. Основной адрес qatoolqa.ru.