O desenvolvimento de software é um processo massivo, e um componente-chave disso é a manutenção. À medida que a popularidade de um aplicativo cresce, o número de usuários, é claro, também aumenta. Isso pode fazer com que o aplicativo falhe devido à carga pesada.
O que é teste de carga e por que é essencial
O Teste de Carga avalia nosso software sob uma carga variável de usuários virtuais e registra o tempo de resposta e quaisquer erros que ocorram. Este famoso estudo de caso é um exemplo notável de por que o teste de carga do nosso software é essencial: fevereiro de 2020 UK Heathrow Disruption.
– Geeks para Geeks
Sobre a plataforma de teste LoadView
A plataforma LoadView é uma das poucas ferramentas de teste de desempenho baseadas em navegador que fornece relatórios detalhados e sem problemas sobre testes de sites, APIs e aplicativos.
LoadView oferece suporte a APIs RESTful, como JSON e XML, bem como APIs SOAP e Web que exigem autenticação ou execução em várias etapas. Neste artigo, nos concentramos nas APIs da Web e em como podemos fazê-las em cinco etapas simples.
Usando LoadView para carregar APIs de teste: Criar uma API para teste
Vamos criar uma API para usar com LoadView.
Nota: você pode ignorar esse processo se já tiver uma API pronta para ser testada.
Para fins de demonstração, criaremos uma API simples usando nodeJs. O objetivo da API é inserir um endereço IP e receber informações sobre esse endereço. Usaremos MacOs para isso. Os usuários de Windows e Linux podem alterar o código de entrada de acordo com seu sistema operacional.
Primeiro vamos inicializar um projeto:
npm init carregador-testador |
Quando o processo estiver concluído, você verá um arquivo package.json em seu diretório.
Agora vamos instalar duas dependências: Axios e Express, que precisamos para tornar nossa API:
npm i axios express |
Agora, nosso aplicativo de nó foi inicializado com êxito. Para executá-lo, abra o arquivo “package.json” e adicione o seguinte script de início e digite esse script:
Antes de prosseguir, precisamos de uma ferramenta chamada Nodemon do npm que reinicia o servidor cada vez que fazemos alterações.
npm i nodemon |
Agora, no mesmo diretório, crie um novo arquivo chamado “index.js”.
Copie este código para o arquivo .js índice:
import app from "./app.js"
const server = app.listen( 3000, () => {
app.use("/", (req, res) => {
res.end("Hello world!")
})
console.log(`server listening at http://localhost:3000`);
});
Assim, podemos finalmente executar o nosso arquivo. No terminal, execute o seguinte:
nodemon |
Agora é hora de verificar se nossa API está em execução ou não. Nesta demonstração, usaremos a extensão VS Code THUNDER CLIENT, mas você pode usar qualquer software que desejar.
Faça uma solicitação GET no http://localhost:3000 e você deve receber uma resposta de texto “Olá Mundo!”
Para imitar uma tarefa pesada, usaremos ipinfo.io que é uma API de 3ª parte que envia todas as informações de IP em resposta à API. E para usar a própria API precisamos do Axios.
Crie um novo aplicativo de arquivo.js e copie o seguinte código:
import express from "express";
const app = express();
import axios from "axios"
app.use(express.json())
app.get("/api", async (req, res) => {
try{
const result = await axios.get(`https://ipinfo.io/${req.query.ip}/geo`)
console.log(result.data)
res.json({
"result": result.data
})
}
catch(err){
res.json(err.error)
}
})
export default app
Agora você deve ser capaz de ver isso em seu console:
Agora vamos testar nossa API com o cliente Thunder.
Agora você deve ver que implementamos a pesquisa de endereço IP passando o endereço IP como um parâmetro de consulta na URL.
Usando LoadView para testar sua API
Etapa 1: Entrar/fazer login no recebimento de créditos
Na loadview-testing.com você encontrará três tipos distintos de serviços de Teste de Carga:
- Páginas da Web
- Aplicação Web
- Serviços Web/APIs
Clique em Web Services/APIs. Role para baixo até “TEST YOUR API” e selecione-o.
Você será solicitado a fazer login ou se inscrever se for um novo usuário.
Após o registro, você receberá até 5 testes de carga gratuitos que podem ser usados para testar os serviços de teste premium. Após um registro bem-sucedido, você deve ser redirecionado para esta janela:
Etapa 2: Criar um novo dispositivo de teste de carga
No canto superior direito, clique no botão + Novo teste. Você será redirecionado para a tela abaixo:
Selecione o Tipo de Teste de Carga apropriado de acordo com sua API. Como temos uma API Web REST, usaremos um Tipo de Teste de Carga de API Web REST.
Etapa 3: Configuração da tarefa do dispositivo de teste de carga
Agora você verá a janela de configuração da tarefa. Você pode alterar o título do seu Dispositivo de Sem título para qualquer outra coisa que desejar. É aconselhável também adicionar uma descrição ao dispositivo referente à API que você testou.
Como essa API de teste está funcionando localmente, precisamos executá-la no protocolo HTTP em vez de HTTPS.
Você verá um controle deslizante detalhado desativado. Ligue-o e você verá botões de opção para selecionar o protocolo desejado. Selecione HTTP e, em seguida, no nome do host, digite o domínio e a rota da API.
Nota: as etapas acima são para as APIs feitas localmente. Se você tiver uma API ativa, precisará selecionar o protocolo HTTPS.
Clique em “Adicionar parâmetro”, digite “IP” no nome do parâmetro e “106.201.85.245” como o valor.
Nota: Esta etapa é válida somente se seguiu o tutorial da API acima e criou uma API semelhante.
Se você seguiu corretamente as etapas acima, o formulário de URL de configuração da tarefa deve ter esta aparência:
Ao rolar para baixo, você encontrará a janela de configurações. Por padrão, o tipo de solicitação é definido como GET. Como nossa API tem apenas uma solicitação GET, deixaremos isso como está.
Abaixo estão alguns parâmetros adicionais que você pode querer passar, dependendo da sua API. Percorra e selecione todos eles.
Nota: tenha cuidado ao verificá-los, pois o envio de uma solicitação com parâmetros incorretos / incompletos pode desperdiçar seus créditos.
Etapa 4: Criar um cenário
Esta seção depende inteiramente do seu caso de uso. Para nossa API REST de demonstração, usaremos a Curva de Etapa de Carregamento com o número padrão de usuários variados. Como estamos testando uma API básica, não precisamos de um relatório altamente detalhado.
Para entender mais sobre o cenário de criação, você pode consultar nossa base de dados de conhecimento LoadView.
Passo 5: Relatório Final
Agora, sua API estará sujeita a um teste de carga. Isso geralmente leva cerca de sete a dez minutos, após os quais você pode simplesmente verificar o relatório em seu painel. Você também pode receber um relatório detalhado por e-mail.
Parabéns, você criou com sucesso uma API de demonstração e/ou executou um teste de carga rudimentar. Para saber mais sobre o LoadView, inscreva-se para uma avaliação gratuita do LoadView e agende uma demonstração individual. Ficaremos felizes em ouvir de você.