TW Livre
> Tutoriais
> Api docs
> Tutorial | Documentação de APIs - Testando uma API com o Postman
Testando uma API com o Postman
Esta parte do tutorial fala sobre:
o que são testes de API e sua importância
como testar uma API na prática usando a plataforma Postman
Teste de APIs
Testar uma API significa fazer requests para a aplicação e consumir as respostas dessas requisições.
Os testes de API têm diversas finalidades:
Para o time que desenvolve a API, incluindo desenvolvedores e profissionais de testes:
testar se a API está funcionando corretamente
identificar possíveis melhorias na arquitetura da API
Para o lado do cliente, que desenvolve a aplicação que consome os dados da API:
verificar se os requests foram construídos corretamente
verificar se as respostas contém os dados esperados e como estão estruturadas
Existem várias maneiras de testar uma API. Uma delas é usando plataformas chamadas de API clients, ou clientes de API.
Para este tutorial vamos usar o Postman, um dos API clients mais populares.
Postman
Acessando o Postman
O Postman está disponível via instalação local e em versão web. Vamos usar a versão web neste tutorial, mas você pode fazer as mesmas operações usando a instalação local.
Instalação local: acesse o site do Postman, faça o download do aplicativo e instale no seu sistema.
A versão web exige que você crie uma conta no Postman. A criação de uma conta é gratuita e oferece algumas facilidades adicionais, como sincronizar entre dispositivos as suas configurações, preferências e definições de APIs que você usa com frequência.
Fazendo requests para uma API sem parâmetros
Para o primeiro teste prático com o Postman, vamos usar uma API que retorna citações de Ron Swanson. (Ron Swanson é um dos personagens da série de TV “Parks and Recreation”, conhecida no Brasil como “Parks & Recreation: Confusões de Leslie”.)
A API de citações do Ron Swanson é uma API gratuita que está disponível para qualquer pessoa enviar requisições livremente.
Esta é uma API simples porque ela não exige nenhuma informação especial para a requisição. Não é preciso fazer nenhum tipo de autenticação e nem enviar dados no Header ou Body. Basta você fazer um request para a URL da API e ela já retorna os dados solicitados, neste caso, uma citação do Ron Swanson.
Passos para fazer a requisição:
Acesse o Postman na web ou na sua instalação local.
No menu lateral esquerdo, acesse a seção Collections e clique no ícone para adicionar uma nova coleção
Coleções do Postman são uma forma de organizar as definições de APIs. É comum que Tech Writers tenham que lidar com diferentes APIs no dia a dia. As coleções permitem agrupar as configurações de requests dessas APIs, facilitando os testes e a operação com cada uma.
Renomeie a coleção para “Citações do Ron” para ficar mais fácil de identificá-la. Em seguida, clique em Add a request para incluir uma nova requisição nessa coleção.
Renomeie o request para Buscar uma citação aleatória.
Note que o nome descreve exatamente o que o request faz: ele busca, aleatoriamente, uma citação do personagem em uma base de dados onde tem uma extensa lista de citações.
É uma boa prática que os nomes de requests usem verbos para indicar uma ação.
Mantenha o método GET preenchido. Você poderia escolher qualquer outro método, mas esta API aceita apenas o método GET, pois ela permite apenas buscar um recurso da API.
Preencha a URL da requisição logo ao lado do método. A URL da requisição da API de citações do Ron Swanson é a seguinte:
Sua tela do Postman deve se parecer com a imagem abaixo:
Clique em Send para enviar a sua requisição e pronto! Na área inferior você pode conferir a resposta da requisição, onde aparece uma citação aleatória do Ron.
Clique em Send novamente e perceba que você receberá uma nova resposta da API, com uma nova citação aleatória. Cada vez que você enviar uma requisição, a API responderá com uma citação diferente.
Algumas APIs podem estabelecer um limite de requisições. Cada requisição consome recursos da API, então é normal que algumas empresas permitam fazer apenas um número máximo de requisições e, depois de atingir o limite, comecem a cobrar por cada requisição realizada. Mas não se preocupe: este não é o caso da API de citações do Ron Swanson!
Fazendo requests para uma API com parâmetros
Para o segundo teste prático com o Postman, vamos usar a API Sunset and Sunrise Times. Ela traz os horários do nascer do sol e do pôr do sol em um determinado local.
O Sunset and Sunrise Times é uma API gratuita que está disponível para qualquer pessoa enviar requisições livremente.
Esta é uma API que exige que você informe alguns parâmetros na requisição, para que o serviço saiba o lugar para o qual você quer consultar os horários solares. A consulta é feita com base na latitude e longitude informadas na requisição. Esses parâmetros são obrigatórios, mas a API aceita alguns parâmetros adicionais que são opcionais.
A API Sunset and Sunrise Times é de propriedade do site Sunrise-Sunset.org e oferecida livremente na internet.
Passos para fazer a requisição:
Acesse o Postman na web ou na sua instalação local.
No menu lateral, acesse a seção Collections e clique no ícone para adicionar uma nova coleção
Renomeie a coleção para “Horário solar” para ficar mais fácil de identificá-la. Em seguida, clique em Add a request para incluir uma nova requisição nessa coleção.
Renomeie o request para Buscar horário solar de um local.
Mantenha o método GET preenchido. Esta API aceita apenas o método GET, pois ela permite apenas buscar um recurso da API.
Preencha a URL da requisição logo ao lado do método. A URL de requisição desta API é a seguinte:
https://api.sunrise-sunset.org/json
Clique na guia Params e preencha as colunas Key, Value e Description dos parâmetros com os valores abaixo:
Parâmetro 1:
Key = lat
Value = 36.7201600
Description = Latitude
Parâmetro 2:
Key = lng
Value = 4.4203400
Description = Longitude
Sua tela do Postman deve se parecer com a imagem abaixo:
Clique em Send para enviar a sua requisição e pronto! Na área inferior você pode conferir a resposta da requisição, onde aparecem as informações de horário solar para as coordenadas informadas nos parâmetros.
Perceba que o teste acima não especifica de quando são os horários solares retornados. A API tem um comportamento padrão que é considerar sempre a data atual, caso você não informe a data de quando quer consultar. Vamos fazer um novo teste colocando uma data como parâmetro:
Acesse o request Buscar horário solar de um local que você criou nos passos anteriores.
Abaixo do parâmetro de longitude, adicione um novo parâmetro:
Key = date
Value = tomorrow
Description = Data
Clique em Send para enviar a sua requisição. Agora, na área inferior você pode conferir a resposta da requisição, onde aparecem as informações de horário solar para as coordenadas informadas nos parâmetros.
Experimente fazer novas consultas trocando as coordenadas e a data. Você pode consultar os horários solares de qualquer lugar e para qualquer data que quiser.