DEV Community

Cover image for Simular corpos de REQUISIÇÃO automaticamente para acelerar a depuração de APIs
jasonchan
jasonchan

Posted on

Simular corpos de REQUISIÇÃO automaticamente para acelerar a depuração de APIs

Ao desenvolver APIs, a depuração é sempre um problema chato.

O Postman pode ajudar a enviar solicitações, mas quando o corpo da API é complicado, a construção de um corpo JSON seria difícil. O Junit também funciona, mas todas as solicitações devem ser construídas por você mesmo nas classes de teste.

Corpos complexos fazem muitos backends abandonarem testes unitários e saírem com uma API não testada para desenvolvedores front-end e engenheiros de QA.

O caso acima demonstra que a qualidade do código declina sem uma boa ferramenta.

E agora, descobri que uma ferramenta chamada Apidog pode gerar o corpo da solicitação automaticamente ao depurar. A ferramenta pode construir um JSON de solicitação correto por si só.

Como simular

Esta abordagem funciona para equipes API-first. As APIs são projetadas antes do desenvolvimento, então durante a depuração, você tem uma especificação de API.

  1. Importe as especificações da API para o Apidog. (Como?)
  2. Abra uma API e verifique se a solicitação tem uma especificação de corpo JSON/XML.

Imagem

  1. Mude para a guia "Run" e clique no botão "Generate Automatically".

Pronto. Você obteve um JSON simulado de acordo com a especificação da solicitação!

Imagem

E agora clique em "Send" para enviar a solicitação como fizemos no Postman, mas de forma mais eficiente. A maioria dos recursos no Postman também é suportada no Apidog.

Nossa equipe tem usado o Apidog para depurar APIs em vez do Postman por semanas.

O que mais há

Observe os dados simulados. Eles foram gerados automaticamente de acordo com o nome do campo. Um campo nomeado "cidade" é simulado com um nome de cidade, um campo chamado photoUrl é simulado com uma URL de foto e todos os dados simulados seguem o schema JSON especificado na API.

E isso não é o fim.

Passe o mouse sobre a seta ao lado de "Generate Automatically", você verá três itens de menu.

Imagem

"Default value first" significa que o JSON simulado seria preenchido pelo valor padrão especificado em cada campo da API primeiro. "Example value first" significa que o JSON simulado seria carregado pelo JSON de solicitação de exemplo primeiro. Mas o que é "Atualizar ao enviar solicitação"?

Imagem

É apenas o significado literal. Cada vez que a solicitação é enviada, o corpo é gerado novamente.

Interessante, não é?

Personalize

Até agora, tudo parece ótimo.

Mas e se alguns dos meus campos não forem esperados para mudar? Como posso tornar alguns campos fixos e outros simulados?

Clique no botão "Dynamic Value" e você encontrará um novo mundo.

Imagem

Todas as sintaxes Faker.js são suportadas e você pode selecionar qualquer uma delas diretamente. Você pode até selecionar uma função para alterar o valor simulado, como md5, substr ou base64 etc.
Em seguida, será inserido no corpo da solicitação, assim.

Imagem

Você pode decidir qual campo é fixo e qual é simulado pelo Faker.js. Ao enviar, todos os campos faker mudarão para os dados reais abaixo.

Imagem

É isso. E muda cada vez que envia.

O Apidog é uma ótima ferramenta que faz nosso time construir APIs mais rapidamente. Eu gosto.

Baixe o Apidog aqui.

Top comments (0)