As APIs são integradas em muitos dos serviços da Web usados hoje, permitindo que os sistemas enviem e comuniquem várias informações de um lado para o outro. Como tal, eles são um poderoso elo entre serviços críticos e usuários. E como em qualquer parte importante de um sistema, é necessário testá-los. Usando soluções de teste de API de terceiros, ou Carteiro, podemos fazer testes manuais e automatizados (incluindo monitoramento de API).

API significa Interface de Programação de Aplicativos. É uma interface de software para software. Com APIs, os aplicativos conversam entre si sem intervenção do cliente. Mas com milhares de APIs disponíveis, o Carteiro entra em cena para criar, testar, compartilhar e gerenciar essas APIs tornando o uso da API eficiente e menos tedioso.

Este artigo ajudará você a entender o que é carteiro, quais são as Coleções de Carteiro, recursos e benefícios proeminentes e como você pode configurar testes de carga para coleções de Carteiro e sua integração com os pipelines de CI/CD com o LoadView.

Teste de carga do carteiro com LoadView

Explore nossa solução de teste de carga ou leia abaixo para obter passos sobre como usar o Carteiro com o LoadView

What is Postman for API testing?

Postman é um aplicativo baseado em HTTP que testa APIs por meio de uma interface gráfica do usuário (GUI). Ele usa comandos incluindo GET, POST e DELETE para obter resultados de interação que você pode validar posteriormente.

Can we use Postman for API testing?

O único propósito de design do Postman é o teste de API. Sua vantagem reside na GUI conveniente que permite a fácil adoção entre os usuários. O design amigável do Postman reduz significativamente a curva de aprendizado, liberando um tempo valioso.

How do I test a Postman POST request?

Para testar uma solicitação POST, você deve criar a solicitação no Postman. Uma vez salvo, você pode então Solicitar o POST e aplicar vários parâmetros. Uma vez enviado, o Postman verá um código de resposta, com 201 indicando uma solicitação bem-sucedida.

Why do we use Postman tool?

A ferramenta Postman é inestimável para nos ajudar a testar APIs. Com o Postman, podemos observar facilmente a atividade e os resultados da API. No geral, ele oferece suporte a desenvolvimento, solução de problemas e verificação rápidos para APIs.

What are the methods used in Postman?

Postman pode trabalhar com sete métodos HTTP distintos. Estes são GET, POST, PUT, PATCH, HEAD, DELETE e OPTIONS. Os vários métodos representam possíveis interações do usuário e como a API lida com os dados resultantes.

O que é carteiro?

O Carteiro é uma ferramenta popular de clientes de API que facilita a criação, compartilhamento, teste e documente APIs de equipes de desenvolvimento. Ele fornece uma experiência de usuário perfeita que ajuda a atingir os pontos de extremidade da API, criando rapidamente solicitações de acordo com a especificação da API e dissecando os vários parâmetros de resposta, como o código de status, os cabeçalhos e o próprio corpo da resposta. Podemos aproveitar esses recursos para testes contínuos e automatizados. Ele é usado como uma ferramenta complementar para desenvolver, documentar e testar em uma API e fornece uma interface de usuário para fazer solicitações de servidor de APIs REST (Representational State Transfer) e mostra a resposta dos servidores.

O Carteiro é uma ferramenta de desenvolvimento de API usada no ciclo de vida de desenvolvimento de software:

  • Desenvolvimento de API
  • Teste de API
  • Documentação de API

O carteiro não só nos fornece um ambiente para trabalhar com APIs, mas também pode ser usado para solicitar páginas da Web como um navegador. Digite a URL na barra de endereços e aperte enviar para ver a resposta HTML (HyperText Markup Language). O Postman também pode ajudar a anexar scripts antes que o usuário envie a solicitação e depois de obter a resposta. Podemos armazenar cada solicitação em uma coleção, que mais tarde pode ser usada para executar todas as solicitações em ordem.

No entanto, uma coisa que Postman não é é uma ferramenta de teste de desempenho. Embora você seja capaz de executar pequenos testes controlados que lhe dão tempos de resposta de API, não é o mesmo que executar um teste em condições do mundo real. Ele não coloca a API sob qualquer tipo de estresse real, por isso não é um bom indicador de como sua API responderá quando usuários reais estiverem envolvidos. Para isso, você precisa de uma solução como o LoadView, sobre o qual falaremos com mais detalhes mais adiante neste artigo.

Interface carteiro

O que é o teste de API?

No teste de API usamos ferramentas dedicadas para enviar chamadas para o servidor hospedando a API e recuperar a resposta. O objetivo do teste de API é confirmar a execução correta e validar se a API está recebendo, economizando ou atualizando recursos conforme o planejado.

Se sabemos que a API deve executar uma ação específica, como atualizar dados, buscar dados, excluir dados, fazer uma alteração nos dados, os testes devem verificar os resultados dessas ações. Ele se comporta da mesma maneira que deveria ser? E quando isso não deveria acontecer? E os resultados são o que você esperaria que fosse? O teste de API é tipicamente um teste de caixa preta, mas na medida em que temos acesso aos resultados das ações da API de antemão e sabemos a resposta esperada que precisa ser validada.

 

Teste de API: Teste funcional vs. Teste de Carga

Como mencionamos brevemente acima, testes funcionais ou testes de caixa preta, estão principalmente preocupados em testar funções básicas contra um conjunto de especificações e observar se funcionam ou não. Antes que as APIs possam ser movidas através do ciclo de desenvolvimento e testadas ainda mais, é importante que as funcionalidades básicas da API estejam funcionando. Se os desenvolvedores passarem do teste funcional para o teste de carga sem garantir que as funções básicas tenham sido testadas corretamente, isso descartará os testes de carga e os resultados. Os resultados dos testes funcionais são simplesmente observar se algo funcionou ou não.

Por outro lado, o teste de carga é como o teste funcional, mas a diferença é que o teste de carga se define para testar como essas funcionalidades resistem a um grande número de usuários simultâneos, ou carga. Os resultados dos testes de carga incluem entender como esses pontos finais da API respondem e têm desempenho sob carga.

 

Características do Carteiro

Aparentemente não há fim para a grande quantidade de recursos que o Carteiro oferece aos usuários. Desde recursos como a API do Carteiro e controles de fluxo de trabalho até monitores incorporados para testes de regressão, a ferramenta tem testes de API cobertos. No entanto, em um alto nível, há um punhado de recursos principais que todo testador de API precisará. Vamos dar uma olhada mais de perto nessas características.

Pedidos de importação

O Carteiro fornece um recurso de importação, onde podemos colar texto CURL bruto e convertê-lo em uma solicitação formatada com detalhes como URL de solicitação, cabeçalhos, órgão de solicitação, parâmetros de consulta e tokens de autorização.

Suporte múltiplo de protocolo e tecnologia

O recurso de cliente de API do carteiro nos permite enviar solicitações REST, SOAP, WSDL e GraphQL .

Escrever casos de teste

Podemos criar casos de teste que executam APIs adicionadas e podem ajudar na validação de resposta com a afirmação de respostas JSON/XML e validações de código de resposta.

Coleções

Carteiro nos ajuda a criar coleções que ajudam a segregar APIs com pastas Estrutura para diferentes projetos. Ele fornece suporte para executar a Collection, que eventualmente executará todas as APIs parte da coleção.

Validação de JSON Schema

Você pode usar o esquema JSON (JavaScript Object Notation) para definir a estrutura de suas solicitações e respostas. Ajuda a limpar e estruturar o conteúdo JSON, facilitando a compreensão e leitura em Carteiro.

Usar ambiente e variáveis dinâmicas

Podemos criar variáveis em Carteiro e com base em diferentes ambientes, as mesmas variáveis podem ter valores diferentes mapeados para o ambiente selecionado. Isso é útil enquanto trabalhamos com as mesmas APIs, mas vários ambientes no mundo real.

Converter API em Código

O carteiro permite que a solicitação de API seja convertida em código em todas as linguagens proeminentes como JavaScript, Golang, Java, PHP, Python e muito mais.

 

Benefícios do Carteiro

Aqueles que usam carteiro regularmente estarão familiarizados com os benefícios abaixo. No entanto, esta não é uma lista exaustiva de recursos e recursos desta ferramenta de teste de API. Vejamos alguns dos principais benefícios do Carteiro.

Automatizar testes de API

Este é o primeiro e mais óbvio benefício do Carteiro. A ferramenta permite automatizar testes de API e integrar a coleção com pipelines DE CI/CD. E, como mencionamos acima, o teste de API utiliza formatos JSON ou XML, que é independente da estrutura do aplicativo ou dos protocolos que os desenvolvedores usam. Não importa qual estrutura você use (Python, JavaScript, Ruby, etc.), o carteiro o suporta. Você pode automatizar testes de unidade, testes de integração, testes de regressão e testes simulados.

Plataforma e OS compatíveis

O carteiro está disponível para Mac OS X, Windows e Linux. O aplicativo Web Postman também está disponível e otimizado para Chrome, Firefox, Edge e Safari.

Relatórios de teste de carteiro

Ele fornece um relatório de teste que nos ajuda a rastrear dados através do construtor de solicitações e você pode gerar relatórios HTML para os testes.

Integrações

O Carteiro fornece suporte e pode ser facilmente integrado com todas as principais ferramentas de desenvolvedores como GitHub, Slack, Dropbox e GitLab.

precificação

Todas as principais funcionalidades do Carteiro estão livres de custos. Você pode obter todos os benefícios acima de graça. Há também planos pagos para Carteiro Pro e Carteiro Enterprise para pequenas e grandes empresas.

 

Alternativas ao Carteiro

Swagger

logotipo swagger

 

 

Swagger é uma especificação de API de código aberto, é como WSDL para APIs REST, onde você define a estrutura do APIs REST (URLs de pontos de extremidade, modelos de entrada/saída, esquema de autenticação, etc.). O arquivo de especificação é baseado em JSON e a extensão do arquivo é JSON ou YAML. Alguns dos principais destaques do Swagger são:

  • Código aberto e gratuito, no entanto, pode ser difícil aprender ou encontrar recursos para problemas.
  • Swagger representa APIs dentro do navegador.
  • Pode gerar automaticamente documentação a partir da construção de seus serviços.

SoapUI

Logotipo soapUI

 

 

 

SoapUI permite que os usuários testem rapidamente e facilmente APIs de REST e SOAP, já que a ferramenta foi criada especificamente para testar APIs. SoapUI ajuda a testar combinações complicadas de serviços web como RESTful, SOAP, JSON e AMF. No entanto, você precisa utilizar o WSDL para testar serviços web. Além disso, para avaliar a automação, há muito script necessário e, para os usuários que não tiveram essa experiência, pode se tornar difícil e demorado. Alguns dos principais destaques do SoapUI são:

  • A funcionalidade point-and-click ajuda a facilitar a usabilidade do JSON e do XML.
  • Carregue dados do Excel, arquivos, bancos de dados, etc.
  • Reutilize seus casos de teste funcionais como testes de carga.
  • Integra-se com plataformas de gerenciamento de API de terceiros, suporta REST, SOAP, JMS e IoT, etc.

 

Integrar testes de coleta de carteiro em pipeline de CI/CD

A Integração Contínua (CI) é uma prática de desenvolvimento que exige que os desenvolvedores mesclem regularmente o código em um repositório compartilhado. Envolve o processo de automatização da compilação e teste de aplicativos cada vez que uma nova mudança se compromete com o código-fonte. O Desenvolvimento Contínuo pode ser explicado como uma sequência de etapas que são necessárias para serem executadas em sequência para permitir que o aplicativo seja executado em um servidor especializado e cumprir seu caso de uso de atender às solicitações do usuário.

 

Carregar testes de coletas de carteiro usando LoadView

Sempre que testamos um aplicativo back-end, testar a funcionalidade é uma parte padrão do processo para garantir que as coisas funcionem como tínhamos a intenção de que elas funcionassem. Agora, isso é tudo muito bom, mas não para o mundo real. Seus aplicativos serão utilizados por muitos, se não centenas ou milhares de usuários ao mesmo tempo, por isso também precisamos realizar testes de desempenho para ver o quão bem eles aguentam esse tráfego. Precisamos fazer benchmark e validar o aplicativo a cada alteração de aplicativo. Como vimos a visão geral do Carteiro, suas características e como podemos configurar a estratégia de teste para testes funcionais de API, precisaríamos entender ferramentas que podem ajudar a estressar o teste da aplicação.

Nos casos em que estamos usando o Carteiro para testar a funcionalidade da API web e queremos gerar um teste de carga a partir das coleções de chamadas de API que temos, podemos optar por uma ferramenta especializada de teste de carga, como o LoadView. O LoadView fornece testes de carga reais baseados em navegador para APIs, bem como aplicativos da Web (externos e internos) e sites e servidores.

Configuração do teste

Vamos dar uma olhada passo a passo sobre como configurar um teste de carga de aplicativo web para uma coleção de Carteiro.

Teste de API do Carteiro LoadView: Passo 1

Antes mesmo de começarmos, precisaríamos exportar a Coleção dos Carteiros. Podemos escolher a opção de obter link público e podemos importá-lo facilmente para o LoadView (Nota: Certifique-se de que a Coleção carteiro usa variáveis locais apenas uma vez que as variáveis do ambiente não são armazenadas na coleção).

Exportação de coleção de carteiro

Teste de API do Carteiro LoadView: Passo 2

Abra a plataforma LoadView e selecione Criar novo teste de carga.

Teste de API do Carteiro LoadView: Passo 3

Aqui você verá os vários tipos de teste de carga que estão disponíveis no LoadView – aplicativos web, sites e APIs. Para nosso caso de uso, selecionaremos a opção Coleção carteiro para iniciar testes de API.

Tipo de teste de carga Carteiro

Teste de API do Carteiro LoadView: Passo 4

Uma nova janela será aberta e aqui é onde precisaremos importar a coleção de Carteiro exportado e clicar em Criar Dispositivo.

Pedido de coleta de carteiro

Teste de API do Carteiro LoadView: Passo 5

Uma vez que tenhamos criado com sucesso um dispositivo, veríamos a tela do Cenário de Teste, onde podemos definir o Tipo de Carga,o que difere com base no objetivo do nosso teste.

  • Curva baseada em carga. Isso é para executar testes de carga com um número conhecido de usuários e aumentar o tráfego após o tempo de aquecimento definido.
  • Curva baseada em gols. Esta configuração de teste é usada quando estamos procurando transações desejadas por segundo para nossa API específica e queremos escalar até os usuários simultâneos desejados.
  • Curva dinâmica baseada . Este conjunto fornece para você escolher valores dinâmicos em número de usuários, usuários máximos e duração do teste, e pode ser alterado, em tempo real, durante o teste.

Tipos de carga de coleta de carteiro

Teste de API do Carteiro LoadView: Passo 6

Uma vez que tenhamos criado um cenário de teste com uma lista de todas as APIs, agora podemos executar testes de carga e estresse para nossas APIs. Após a conclusão bem-sucedida do teste de carga, você receberá relatórios, painéis e métricas que mostram como nossa API e sistemas se saíram sob carga.

 

Coleta de carteiro Carga de integração de teste com Jenkins

À medida que olhamos como podemos integrar e executar testes de carga de coleta de Carteiro usando o LoadView, podemos adicionar esses testes como parte do CI/CD para obter feedback regular e resultados de desempenho. O LoadView também fornece integração com jenkins, o que ajuda sites de teste de estresse, aplicativos web e APIs com conexões simultâneas em navegadores reais a partir de uma nuvem totalmente gerenciada. Quaisquer novas atualizações ou recursos adicionais também podem ser testados com o plugin LoadView para Jenkins.

Vamos dar uma olhada nos passos usados para o cenário de teste de coleção de Carteiro previamente criado no LoadView e sua integração com Jenkins.

Passo 1. Para integrar os testes com Jenkins, estaríamos usando o mesmo cenário de teste de Carteiro criado acima.

Passo 2. Crie um UID único. Isso será usado como um token de segurança para se integrar ao Jenkins. Copie o UID de Integração.

Carteiro Jenkins Integração UID

Passo 3. O ID do cenário de teste para nossa coleção de Carteiro pode ser encontrado na página de configuração do cenário ou na página histórico de teste (Gerente de teste > o menu de ações de teste > Histórico).

Histórico de testes de coleta de carteiro

 

Plugin LoadView em Jenkins

Para configurar o plugin LoadView, siga estas etapas:

  1. Faça login na sua conta jenkins.
  2. Em Jenkins, vá para Credenciais > Adicionar credenciais > LoadView Security Token (UID). Configure e valide as credenciais.
  • Gentil. LoadView Security Token (UID).
  • Escopo. Selecione Global.
  • ID. Deixe o padrão ou especifique um ID exclusivo.
  • Descrição. Especifique uma descrição única para distinguir as credenciais.
  • UID. Cole o UID de teste de carga da Web da sua conta LoadView. Uma vez que o UID tenha sido adicionado, clique em Validar UID para garantir que Jenkins possa acessar a API do LoadView.
  1. Em seguida, selecione um trabalho e clique em Configurar.

Token de segurança Jenkins LoadView

  1. Vá para Criar > ações pós-construção > Adicione o cenário de teste de carga load load da > LoadView-Runapós a construção . Especifique as configurações do teste de estresse do LoadView para a compilação:
  • Credenciais. Selecione a tecla API usando a descrição.
  • ID de cenário. Cole o ID do cenário de teste que você deseja usar na compilação. Copie o ID da página de cenário no LoadView.
  • Limiar de erro. Especifique uma porcentagem aceitável de sessões com erros ocorridos durante o teste (não conseguiu acessar o recurso de destino, nenhuma palavra-chave/imagem encontrada, etc.). Se a porcentagem de sessões de erro for maior do que o valor especificado, a compilação será marcada como uma falhaem Jenkins.
  • Tempo médio. Especifique um limite para um tempo médio de resposta medido durante a execução do teste. Se o limite for atingido, a construção será marcada como um fracassoem Jenkins.
  1. Clique em Salvar.

Exibir resultados de teste do LoadView

Finalmente, integramos com sucesso nossa coleção de Carteiro com Jenkins usando o LoadView como plataforma. Enquanto nosso teste de estresse está sendo executado, o status é exibido na saída do console Jenkins no modo em tempo real.

Saída do console do carteiro Jenkins

Resultados de desempenho do teste do Carteiro Jenkins LoadView

 

Monitorando o Teste de Coleta de Carteiro

LoadView é uma parte das muitas soluções dentro da plataforma Dotcom-Monitor. O Dotcom-Monitor também fornece ferramentas de monitoramento fáceis para nossas coleções de carteiro. Se tivermos uma coleção de testes de integração usados para testes internos de API com carteiro, e também queremos configurar testes para executar fora da rede local, podemos enviar os testes do Carteiro para o Dotcom-Monitor. Usando a tarefa do Dotcom-Monitor Postman Collection, podemos criar testes de monitoramento automatizados com alertas sobre erros. Podemos especificar locais de monitoramento, um agendador de monitoramento, filtros e configurar relatórios com base nos resultados de monitoramento.

A coleta de solicitações HTTP adicionadas será repetidamente executada com a frequência definida para executar a sequência de chamadas para a API da Web de destino. Com isso teremos as afirmações que foram especificadas para as solicitações em Carteiro que ajudarão a verificar as respostas da API. Se qualquer condição definida pelas afirmações não for atendida, a tarefa será marcada como falha.

 

Teste de carga sua API com carteiro: Pensamentos finais

A comunidade de desenvolvimento tem opiniões amplamente variadas sobre o teste de APIs. Vimos como o Carteiro nos ajuda completamente na criação, manutenção e teste de APIs com tanta facilidade. Também analisamos um guia passo a passo sobre como podemos simular a carga de usuários simultâneos testando a coleção Postman usando o LoadView. Por fim, analisamos como podemos automatizar esta etapa usando a integração do Jenkins com o LoadView. As ferramentas necessárias para enfatizar essas aplicações têm sido simplificadas ultimamente e fornecem imensa ajuda para testar sistemas complexos que dependem de aplicações internas e externas. Isso nos ajuda a detectar os gargalos e problemas com mais clareza.

Na LoadView, nosso objetivo é ser seu parceiro especializado em todas as coisas de teste de carga, em todos os estágios de desenvolvimento e em qualquer nível de complexidade. Entendemos que o teste de carga pode ser uma tarefa árdua, por isso trabalhamos incansavelmente para tornar o processo fácil, para que você e sua equipe de desenvolvimento possam integrar o processo de teste de carga em suas práticas de DevOps existentes e dedicar a maior parte de seu tempo e recursos ao que importa – ou seja, melhorar seus sites e aplicativos da Web para seus usuários. Ao eliminar as dores de cabeça dos testes de carga, o LoadView ajuda a melhorar todo o seu processo de desenvolvimento e, finalmente, a experiência dos seus usuários.

Nossa equipe de especialistas está disponível para apoiar você e sua equipe à medida que você desenvolve e aprimora sua estratégia de teste de carga, e você descobrirá que nossa plataforma é intuitiva e fácil de usar, mesmo para usuários não técnicos. Oferecemos testes reais de navegador, scripts de apontar e clicar e relatórios abrangentes e legíveis que eliminam a adivinhação do teste de carga e permitem uma colaboração eficaz entre as funções do desenvolvedor. Também trabalhamos para ficar à frente do setor de testes de carga e fornecer aos nossos usuários ferramentas novas e refinadas para atender às demandas em constante mudança do cenário digital em constante evolução. LoadView é a sua plataforma completa de teste de carga, agora e para o futuro.

Comece a testar suas APIs hoje mesmo com o LoadView. Inscreva-se para a avaliação gratuita e receba testes de carga gratuitos. Ou inscreva-se em uma de nossas demonstrações privadas com um de nossos engenheiros de desempenho. Nosso engenheiro irá orientá-lo através da plataforma LoadView completa, bem como mostrar-lhe como integrar o LoadView em coleções Postman e automatizar as etapas com Jenkins.