Simular corpos de REQUISIÇÃO automaticamente para acelerar a depuração de APIs
jasonchan
Posted on October 13, 2023
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.
- Importe as especificações da API para o Apidog. (Como?)
- Abra uma API e verifique se a solicitação tem uma especificação de corpo JSON/XML.
- 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!
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.
"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"?
É 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.
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.
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.
É isso. E muda cada vez que envia.
O Apidog é uma ótima ferramenta que faz nosso time construir APIs mais rapidamente. Eu gosto.
Posted on October 13, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
October 13, 2023