К содержанию
Checkcraft
Практика в Checkcraft

Автотесты API и логов по traceId

Поможем с первой проверкой →

HTTP 200 не показывает, что произошло внутри операции. Значение могло измениться при обращении к соседнему сервису, а ошибка остаться только в журнале.

Подготовлено командой Checkcraft · Обновлено

Что получится

В учебном прогоне Checkcraft получает записи одной операции и показывает расхождения в отдельных тест-кейсах. По отчёту можно перейти к конкретному значению из лога.

Запись выбрана по traceId. В JSON из message найден статус FAILED вместо PAID, а проверка суммы прошла. Настоящий подробный отчёт Log-прогона с правилами рядом со значениями. По нажатию откроется полный экран прогона.
Запись выбрана по traceId. В JSON из message найден статус FAILED вместо PAID, а проверка суммы прошла. Настоящий подробный отчёт Log-прогона с правилами рядом со значениями. По нажатию откроется полный экран прогона.

Связать запрос с его журналом

Создайте HTTP-запрос и проверьте, где сервис возвращает идентификатор операции. В учебном стенде используется traceId. В вашей системе поле может называться иначе. Оно должно сохраняться при переходе между сервисами.

Полученный идентификатор операции в учебном запросе. Это значение используется при поиске связанных записей.
Полученный идентификатор операции в учебном запросе. Это значение используется при поиске связанных записей. Полный размер ↗

Подключить источник логов

В конструкторе создайте источник логов. Для прямого подключения к Elasticsearch укажите адрес, индекс, способ авторизации и фактическое поле трассировки. Учебный индекс называется checkcraft-live-logs. Адрес localhost в демонстрации относится к машине со стендом, а не к общедоступному сервису.

Настройки источника логов локального стенда. Отсутствие авторизации здесь относится только к учебному окружению.
Настройки источника логов локального стенда. Отсутствие авторизации здесь относится только к учебному окружению. Полный размер ↗

Отделить нужное событие от соседних

Одного traceId недостаточно, если операция пишет несколько записей. Добавьте «Фильтр источника логов» по признаку события. В примере внешний запрос продуктов имеет module равный external-meme и phase равный CHECK_REQUEST. Затем проверяйте поля именно найденной записи.

module = external-meme
phase = CHECK_REQUEST

Сохранить доказательство в отчёте

Для поля самой записи используйте «Поле JSON/источника логов». Если нужный JSON лежит строкой внутри message или другого поля, сначала добавьте «Извлечь JSON» с реальным путём, затем проверяйте разобранные поля. Проверка HTTP-ответа другим шагом не означает, что был проверен лог.

Запись выбрана по traceId. В JSON из message найден статус FAILED вместо PAID, а проверка суммы прошла. Настоящий подробный отчёт Log-прогона с правилами рядом со значениями. По нажатию откроется полный экран прогона.
Запись выбрана по traceId. В JSON из message найден статус FAILED вместо PAID, а проверка суммы прошла. Настоящий подробный отчёт Log-прогона с правилами рядом со значениями. По нажатию откроется полный экран прогона.

Запустить повторяемую проверку

В Log-прогоне выберите запрос, источник логов и тест-кейсы. Выполните прогон и изучите «Сырые логи» вместе с подробным отчётом. При асинхронной записи логи могут появляться с задержкой. Отсутствие события нужно разбирать отдельно от неверного значения в найденном событии. Начать знакомство с правилами можно с локального примера ниже.

Повторить на готовых данных

Быстрый опыт ниже выполняется в редакторе тест-кейса. На снимках показан подробный отчёт из HTTP-прогона или Log-прогона. Для HTTP-прогона верните учебный JSON или XML из локального мока, выполните импортированный тест-кейс и откройте «Анализ результатов», «Детально», «Со структурами». Для Log-прогона загрузите учебные данные в источник логов, включите «Без запроса», выполните проверку и откройте «Детально», «Подробно».

Здесь лежит учебный тест-кейс для Checkcraft, правильный JSON и вариант с намеренной ошибкой. Файлы доступны без регистрации. Это данные для упражнения, а не доступ к чужому API.

Если приложение уже открыто

Создайте коллекцию, конструктор проверки и тест-кейс через контекстное меню дерева. В редакторе нажмите «Импорт» и выберите файл тест-кейса. Откройте добавленный тест. Скопируйте содержимое правильного JSON и нажмите «Вставить данные для анализа». Затем «Запустить тест-кейс» и вкладку «Результат».

Повторите те же действия с испорченным JSON, сохранив правила. В первом запуске ожидается успешная проверка, во втором ошибка. Если результат отличается, сравните импортированный тест, источник данных и текст отчёта.

Сверить с полученными при подготовке страницы отчётами можно по файлам успешного прогона и прогона с ошибкой. Примеры проверены 14 сентября 2026 года на текущем исходном коде приложения.

От примера к своей проверке

Посмотреть, как это работает на ваших данных

Можно начать с учебного файла на этой странице, увидеть найденную ошибку и затем заменить данные своим обезличенным примером. Для Windows и Linux доступна Free (beta) без ограничения срока.

Получить Free (beta)Как получить и запустить приложение

Для получения сборки нужен аккаунт и подтверждение email. Состав бесплатной версии опубликован на странице тарифов.

Можно спросить человека

Поможем с первой проверкой

Расскажите, что хотите проверить или на каком шаге остановились. Поможем запустить Checkcraft, подобрать пример и разобраться с первым прогоном. Можно написать до скачивания.

Telegram-группа открытая: не публикуйте пароли, токены и конфиденциальные рабочие данные. Для первого вопроса достаточно описания задачи.

Можно написать напрямую support@checkcraft.ru

Без регистрации. Ответим по email. Это обращение в поддержку, а не подписка на рассылку.