Antecipe sua dor de cabeça - Inove Teste
Aprenda a dar o real valor aos testes de API do seu produto e antecipar os problemas.
Que os testes de API são igualmente importantes todos nós já estamos cansados de ouvir. Mas você consegue entender na prática essa importância? E é capaz de valorizar como esses testes podem ajudar seu time como um todo?
Os testes de API ajudam a garantir o funcionamento, o desempenho e a confiabilidade de diferentes aplicativos e sistemas baseados em dados, ao certificar as trocas e comunicações entre aplicativos, sistemas, bancos de dados e redes.
Uma API normalmente é consumida por mais de um produto final, o exemplo do website e o APP é o caso mais comuns. Então se hoje temos um GAP na API amanhã teremos pelo menos dois bugs abertos, um da web e um do APP.
Tá mais como pegar esses problemas?
O seu desenvolvedor backend liberou um endpoint? O front ainda não está pronto e ele ainda não fez a integração, aqui é a hora de atacar.
Podemos começar validando o tipo do método, é um GET? Um POST? Um PUT? Um DELETE?
E os parâmetros, que são: o Body da requisição, os filtros necessários e possíveis o path, todos eles estão corretos?
A tipagem dos dados está condizente com que o Front vai usar? O campo de valor numérico está vindo sem as ""? Tentou mandar um texto nesse campo?
Validar a autorização e a autenticação, o uso do token, o Status Code e a mensagem que retorna do erro está claro o motivo? O desenvolvedor tratou o erro, ou ta voltando só o temido 500?
A estrutura da resposta, ta retornando tudo que o front vai precisar mostrar na tela? A resposta está com a tipagem de dados correta? Se você enviar um valor booleano (True, False) no body na resposta ele se mantém?
Regras de negócio já podem ser validadas na API, por exemplo, só usuário do tipo "Professor" pode acessar, só é possível criar evento para turmas do Ensino Médio, a data inicial da aula não pode ser "futura" a data final, e por aí vai.
Também é importante validar se está de acordo com o contrato firmado na fase de planning pois o Front está se baseando nele para construir a tela, então tudo o que dizia lá hoje está no endpoint? A rota é a mesma?
São muitos e muitos os cenários de testes que podem ser validos e ao perceber um problema aqui, nessa fase,já antecipamos o erro na hora da integração.
E além disso evitamos de abrir, um, dois ou mais bugs lá na frente, e esse bug seria aberto apenas como "não retorna o nome no GRID de visualização" e a eterna guerra entre "isso é Front/ isso é Back" será evitada, pois o back foi validado e está retornando o campo.
A API também te ajuda a ajudar o desenvolvedor na hora do BUG inevitável. Quando um erro acontece, investigue, de um F12 vá lá na aba Network avalie o erro, não salvou, deu 400, qual a resposta da API? Qual o Payload o front ta mandando? E entregue o Bug com mais informações possíveis assim será mais rápida e assertiva a correção.
Deu para te convencer da importância desse teste? De como cada vez mais e mais é necessário você saber usar aquele tal Postman/Insomnia? De como você vai tornar o processo de integração mais fluído e rápido?
Você como pessoa que testa o software tem o poder de evitar bugs futuros, ajudar na integração e antecipar passos, só basta você querer.