Pular para o conteúdo

Reprodução de Sessão e Teste de Carga

Uma requisição capturada pode ser executada de novo exatamente como está, em dois modos que cada um faz o seu próprio trabalho: a reprodução de sessão reproduz uma sequência de requisições em massa, na ordem original (reproduzir um fluxo, verificar regressão, reproduzir contra um ambiente diferente); o teste de carga aplica pressão de alta frequência a uma única requisição para testar se ela aguenta. Ambos são acessíveis com o botão direito a partir dos registros de captura, e mesmo as APIs privadas que carregam uma assinatura / timestamp funcionam perfeitamente.


1. Três formas de “enviar de novo”, cada uma com seu próprio trabalho

Seção intitulada “1. Três formas de “enviar de novo”, cada uma com seu próprio trabalho”

A mesma ideia de enviar uma requisição capturada de novo, dividida por finalidade:

Capacidade Função
Compor e Reproduzir Editar e reenviar uma única requisição
Reprodução de sessão (primeira metade desta página) Reprodução em massa de múltiplas requisições em ordem, observando o status e a latência de cada uma
Teste de carga (segunda metade desta página) Pressão de alta frequência em uma única requisição, medindo a vazão e os percentis de latência

2. Reprodução de Sessão: reproduza uma sequência de requisições em massa

Seção intitulada “2. Reprodução de Sessão: reproduza uma sequência de requisições em massa”

Pegue uma sequência de requisições capturadas e execute-as de novo em massa na ordem original, reproduzindo fielmente a sequência de requisições, com a opção de repetir a sequência inteira N vezes em loop.

Como chegar lá

  • Semear a partir de uma captura: clique com o botão direito em “Reproduzir esta requisição” na lista de captura, ou selecione várias e “Reproduzir requisições selecionadas”.
  • Adicionar manualmente: “+ Adicionar requisição” no painel, onde cada uma pode ser editada no local, método / URL / parâmetros / cabeçalhos / Corpo.

Configurável

  • Contagem de loops: execute a sequência inteira N vezes.
  • Intervalo entre requisições: pause por um tempo entre cada uma.
  • Troca de ambiente: escolha um ambiente e reproduza a sequência inteira contra outro com um clique.

Resultados: liste o método, a URL, o código de status e a latência de cada requisição, além do progresso geral, das contagens de sucesso / falha e do tempo total decorrido.

Reprodução de sessão: reproduza requisições selecionadas em massa na ordem de captura, com loop e intervalo configuráveis, fornecendo o código de status e a latência de cada requisição, além das contagens gerais de sucesso / falha

Quando usar

  • Reproduzir um fluxo de múltiplas etapas ou um problema dependente de temporização.
  • Regressão em lote para verificar um grupo de endpoints.
  • Reproduzir um trecho de requisições capturadas em produção como estão contra um ambiente de teste.

3. Teste de Carga: leve uma única requisição ao limite

Seção intitulada “3. Teste de Carga: leve uma única requisição ao limite”

Capturou um endpoint e quer saber se ele aguenta? Clique com o botão direito em “Testar carga desta requisição” em qualquer requisição capturada para começar imediatamente, com a vazão e os percentis de latência reportados em tempo real.

  • Testar carga direto de um registro de captura: clique com o botão direito em “Testar carga desta requisição”, e o método / endereço / cabeçalhos / corpo são transferidos automaticamente e ele começa imediatamente, com qualquer protocolo ausente preenchido.
  • Configuração manual: abra “Teste de carga” na caixa de ferramentas e preencha o alvo e os parâmetros você mesmo. É uma janela flutuante, e você pode executar vários testes de carga independentes em várias janelas ao mesmo tempo sem que interfiram entre si.

Diferente das ferramentas comuns de teste de carga: aqui você clica com o botão direito em uma requisição capturada para testar sua carga, sem reinserir parâmetros, poupando você da ida e volta de “capturar em outro lugar primeiro, depois movê-la à mão para a ferramenta de teste de carga”.

  • Taxa constante (QPS): aplica pressão de forma uniforme na taxa configurada de requisições por segundo, usando um método de medição de latência mais rigoroso, de modo que latências de cauda como o p99 permanecem honestas sob carga alta em vez de aparecerem artificialmente baixas, adequado para avaliar “a latência real deste endpoint a X QPS”. Esse rigor se aplica principalmente a este modo.
  • Concorrência: dispara sem pausa em uma concorrência fixa para empurrar a vazão máxima, adequado para testar “o limite do que ele consegue suportar”.
  • Requisição: método (GET / POST / PUT / PATCH / DELETE / HEAD), URL (protocolo opcional, https preenchido automaticamente), tabela de parâmetros de consulta, tabela de cabeçalhos, corpo (JSON / formulário / bruto).
  • Pressão: taxa (1–100000 req/s), concorrência / conexões (1–2000), duração (1–3600 segundos, por duração em vez de uma contagem total fixa).
  • Avançado: seguir redirecionamentos, pular a verificação TLS.
  • Conexões: reutilização automática de conexão (keep-alive); tenta HTTP/2 automaticamente para alvos HTTPS.
  • Vazão: um grande número de RPS ao vivo, além de um gráfico de linha de vazão ao vivo.
  • Contagens: enviados / sucessos / erros / decorrido.
  • Percentis de latência (milissegundos): p50 / p90 / p95 / p99 / p99,9 / máx.
  • Distribuição de códigos de status: rótulos codificados por cor por 2xx / 3xx / 4xx / 5xx / erro.

Teste de carga: grande RPS ao vivo + gráfico de linha de vazão, enviados / sucessos / erros / decorrido, percentis de latência p50–p99,9 e máx, distribuição de códigos de status

Interrompível a qualquer momento; fechar a janela interrompe automaticamente o teste de carga em andamento.


Seja na reprodução de sessão ou no teste de carga, a edição de requisições segue a mesma linhagem do compositor de requisições (Composer): ele suporta variáveis de ambiente e valores dinâmicos (UUID, timestamp, nonce, Base64, MD5 / SHA, assinatura HMAC, codificação de URL e mais). Assim, aquelas APIs privadas que só deixam você passar com uma assinatura / timestamp ainda podem ser reproduzidas em massa e ter a carga testada, sem calcular a assinatura à mão.


Voltar para Captura por Proxy · Relacionados: Compor e Reproduzir