Testes funcionais em APIs REST com a ferramenta Frisby.js — Parte 3

Luiz Eduardo Martins
Serasa
Published in
3 min readMay 17, 2019

Dando continuidade a série de posts (se você perdeu a parte 1 e a parte 2, clica nos links e dá uma conferida!), vamos falar sobre testes aninhados e os inspetores disponibilizados pelo Frisby.

Imagem motivacional

Os testes aninhados, ou Nested Tests como são chamados, são testes que tem uma dependência entre si. Um bom exemplo de testes aninhados, são testes que dependem de algum tipo de autenticação, ou token, resgatado a partir de um login ou outro endpoint qualquer.

No Frisby.js estes testes são implementados no formato de uma Promise do JavaScript. Isso significa que o segundo teste só é executado quando o primeiro for finalizado (obtiver alguma resposta). No exemplo abaixo, demonstramos a busca de um valor através de um get em um endpoint e a atualização desta informação após a alteração a partir de uma lógica de sua API.

Print de código com testes aninhados

Observe que a palavra reservada then no Frisby atua como um receptor da resposta do primeiro endpoint (formato de Promise, comentado acima) para que possamos buscar qualquer valor da resposta e usar a nosso favor.

"Entendi"

Inspetores

Os inspetores são funções incorporadas pelo Frisby para que possamos obter mais informações sobre as APIs que estamos testando. É uma espécie de debug de sua requisição/resposta. Com eles você pode logar (no terminal) informações como:

  • JSON de resposta (body formatado)
  • A resposta
  • A requisição
  • Os Headers da requisição
  • O Body da resposta
  • O Status (HTTP) da resposta
  • Os Headers da resposta
Inspetor do corpo da requisição
Resposta no terminal

Próximos passos

Este é o nosso terceiro artigo da série. O último que temos programado é o seguinte:

Parte 4: Customizando relatórios de execução dos testes

Perdeu as partes anteriores? Clica nos links abaixo e seja feliz :)
Parte 1: Introdução e requisições GET

Parte 2: Fazendo requisições POST e PUT

Quer saber mais?

Queremos estreitar relações com as comunidades e profissionais de tecnologia que queiram trocar figurinhas.

Por enquanto, os comentários aqui do Medium são nosso canal de comunicação oficial. Deixa sua mensagem para que possamos interagir ou mande um e-mail para ecs_it@br.experian.com.

Temos várias vagas nas áreas de Negócios e TI! O que você acha de dar uma olhada lá? É só clicar nesse link.

Até breve…

Luiz Eduardo Martins e Jonathan Henkels — Serasa Consumidor

--

--