Pular para o conteúdo
SDETRole
SDETRole

Testes de API

Validador de respostas de API

Rode checagens de JSONPath, status e headers em uma resposta colada.

Roda inteiramente no seu navegador Sem cadastro

Checks run as you type. JSONPath scripts and filters are disabled for safety.

Response body (JSON)

Status and headers (optional)

One “Name: value” per line, as copied from DevTools or curl -i.

Checks · 2

Expected values are parsed as JSON when possible (42, true, "42", null), otherwise compared as text. When a path matches several values, every match must pass; length operators count the matches.

Paste a JSON response body to run the checks

Sobre esta ferramenta

Antes de escrever assertions em código, vale testá-las em uma resposta real e ver quais passam. Cole um body JSON, opcionalmente o status code e os headers copiados do DevTools ou de curl -i, e defina checagens em uma tabela: um JSONPath existe ou não, é igual a um valor, tem um tipo, casa com uma regex, contém um item, tem um tamanho, ou é maior ou menor que um número. Checagens de status aceitam códigos exatos ou classes como 2xx, e os nomes de headers são comparados sem diferenciar maiúsculas de minúsculas. Os resultados aparecem como em um test runner, com linhas ✓ e ✕ e um resumo “3 passed, 1 failed” que você pode copiar para um relatório de bug. O JSONPath é avaliado com a execução de scripts desativada, então expressões de filtro são rejeitadas em vez de executadas. O tempo de resposta não pode ser medido a partir de texto colado, então essa checagem é marcada como ignorada.

Como usar

  1. Cole o JSON do body da resposta e, se quiser verificá-los, o status e os headers. Ou clique em “Load sample”.
  2. Adicione checagens: escolha um alvo, informe um JSONPath como $.data[*].email ou um nome de header, escolha um operador e um valor esperado.
  3. Leia os resultados enquanto digita e copie o relatório. Caminhos que encontram vários valores precisam passar para todos eles.

Perguntas frequentes: Validador de respostas de API

Por que minha expressão de filtro como $..[?(@.price > 10)] falha?

Expressões de filtro e de script exigem avaliar código, o que esta ferramenta desativa por segurança. Use caminhos com curinga como $.items[*].price com um operador como “>”: todo valor encontrado precisa passar.

Como o valor esperado é interpretado?

Se puder ser lido como JSON, é comparado como JSON: 42 é número, "42" é string, true é booleano e null é null. Qualquer outra coisa é comparada como texto simples. A igualdade em objetos e arrays ignora a ordem das chaves.

Posso transformar essas checagens em testes automatizados?

Sim. Quando as checagens passarem, use o API Assertion Builder para gerar assertions equivalentes em Playwright, Postman, REST Assured ou Cypress.

Digite para buscar em todo o SDETRole.

Busca de texto completo com Pagefind · roda no seu navegador Abrir página de busca →