Перейти к содержимому

Повтор сессии и нагрузочное тестирование

Захваченный запрос можно выполнить заново точно так же, как есть, в двух режимах, каждый из которых занимается своим делом: повтор сессии воспроизводит серию запросов пакетом, в их исходном порядке (воспроизвести поток, регрессионно проверить, повторить в другом окружении); нагрузочное тестирование подвергает высокочастотной нагрузке один запрос, чтобы проверить, выдержит ли он. Оба доступны через правый клик по записям захвата, и даже приватные API, несущие подпись / метку времени, отрабатывают нормально.


1. Три способа «отправить заново», каждый со своей задачей

Заголовок раздела «1. Три способа «отправить заново», каждый со своей задачей»

Одна и та же идея повторной отправки захваченного запроса, разделённая по назначению:

Возможность Роль
Конструирование и повтор Редактирование и повторная отправка одного запроса
Повтор сессии (первая половина этой страницы) Пакетный повтор нескольких запросов по порядку, наблюдение за статусом и задержкой каждого
Нагрузочное тестирование (вторая половина этой страницы) Высокочастотная нагрузка на один запрос, измерение пропускной способности и перцентилей задержки

2. Повтор сессии: воспроизвести серию запросов пакетом

Заголовок раздела «2. Повтор сессии: воспроизвести серию запросов пакетом»

Возьмите захваченную серию запросов и выполните её заново пакетом в исходном порядке, достоверно воспроизводя последовательность запросов, с возможностью зациклить всю серию N раз.

Как туда попасть

  • Начать с захвата: правый клик «Повторить этот запрос» в списке захвата, или выберите несколько и «Повторить выбранные запросы».
  • Добавить вручную: «+ Добавить запрос» на панели, где каждый можно редактировать на месте: метод / URL / параметры / заголовки / тело.

Настраивается

  • Число циклов: выполнить всю последовательность N раз.
  • Интервал между запросами: пауза между каждым.
  • Смена окружения: выберите окружение и повторите всю серию в другом окружении одним кликом.

Результаты: список с методом, URL, кодом состояния и задержкой каждого запроса, а также общим прогрессом, счётчиками успех/неудача и общим затраченным временем.

Повтор сессии: повторить выбранные запросы пакетом в порядке захвата, с настраиваемым циклом и интервалом, показывая код состояния и задержку каждого запроса плюс общие счётчики успех/неудача

Когда использовать

  • Воспроизвести многошаговый поток или проблему, зависящую от таймингов.
  • Пакетная регрессия для проверки группы эндпоинтов.
  • Повторить отрезок захваченных в продакшене запросов как есть в тестовом окружении.

3. Нагрузочное тестирование: довести один запрос до предела

Заголовок раздела «3. Нагрузочное тестирование: довести один запрос до предела»

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

  • Нагрузочное тестирование прямо из записи захвата: правый клик «Нагрузочно протестировать этот запрос», и метод / адрес / заголовки / тело переносятся автоматически, тест начинается немедленно, с автоматическим заполнением недостающего протокола.
  • Ручная настройка: откройте «Нагрузочное тестирование» из панели инструментов и заполните цель и параметры сами. Это плавающее окно, и можно запустить несколько независимых нагрузочных тестов в нескольких окнах одновременно, не мешая друг другу.

В отличие от обычных инструментов нагрузочного тестирования: здесь вы кликаете правой кнопкой по захваченному запросу, чтобы нагрузочно его протестировать, без повторного ввода параметров, избавляя вас от кругового пути «сначала захватить в другом месте, затем вручную перенести в инструмент нагрузочного тестирования».

  • Постоянная скорость (QPS): подавать нагрузку равномерно с заданным числом запросов в секунду, используя более строгий метод измерения задержки, так что хвостовые задержки вроде p99 остаются честными под высокой нагрузкой, а не читаются искусственно заниженными, подходит для оценки «реальной задержки этого эндпоинта при X QPS». Эта строгость применяется в основном к этому режиму.
  • Конкурентность: стрелять запросами один за другим на фиксированной конкурентности, чтобы выжать максимальную пропускную способность, подходит для проверки «предела того, что он может выдержать».
  • Запрос: метод (GET / POST / PUT / PATCH / DELETE / HEAD), URL (протокол опционален, https подставляется автоматически), таблица параметров запроса, таблица заголовков, тело (JSON / форма / сырое).
  • Нагрузка: скорость (1–100000 запросов/с), конкурентность / соединения (1–2000), длительность (1–3600 секунд, по длительности, а не по фиксированному общему числу).
  • Дополнительно: следовать редиректам, пропустить проверку TLS.
  • Соединения: автоматическое повторное использование соединений (keep-alive); автоматически пытается использовать HTTP/2 для целей HTTPS.
  • Пропускная способность: крупное живое число RPS плюс живой линейный график пропускной способности.
  • Счётчики: отправлено / успешно / ошибки / затрачено времени.
  • Перцентили задержки (в миллисекундах): p50 / p90 / p95 / p99 / p99.9 / max.
  • Распределение кодов состояния: цветовые метки по 2xx / 3xx / 4xx / 5xx / ошибка.

Нагрузочное тестирование: крупное живое число RPS + линейный график пропускной способности, отправлено / успешно / ошибки / затрачено, перцентили задержки p50–p99.9 и максимум, распределение кодов состояния

Можно остановить в любой момент; закрытие окна автоматически останавливает выполняющийся нагрузочный тест.


4. Столь же мощное редактирование запросов

Заголовок раздела «4. Столь же мощное редактирование запросов»

Будь то повтор сессии или нагрузочное тестирование, редактирование запросов следует той же линии, что и конструктор запросов (Composer): поддерживаются переменные окружения и динамические значения (UUID, метка времени, nonce, Base64, MD5 / SHA, HMAC-подпись, URL-кодирование и многое другое). Так что те приватные API, которые пропускают только с подписью / меткой времени, всё равно можно повторять пакетами и нагрузочно тестировать, не вычисляя подпись вручную.


Назад к Захвату через прокси · Смотрите также: Конструирование и повтор