Pular para o conteúdo
Bruno Dórea
Todos os posts

2 mins de leitura


Testes de Performance com K6

Primeiros passas em teste de performance com k6.


Teste de performance é um tipo de teste de software que avalia a velocidade, estabilidade, escalabilidade e capacidade de resposta de um sistema sob diferentes cargas de trabalho. Ele identifica gargalos e garante que a aplicação funcione de forma eficiente, mesmo sob alto tráfego.

O que é k6?

O k6 é uma ferramenta de código aberto para testes de performance, projetada para avaliar a escalabilidade e a resistência de aplicações. Ele permite criar, executar e analisar testes de carga usando scripts escritos em JavaScript, sendo leve e eficiente. O k6 é amplamente utilizado para testar APIs, microservices e aplicações web, oferecendo métricas detalhadas e integração com CI/CD.

Instalação do k6

Linux

  • Debian/Ubuntu
sudo gpg -k
sudo gpg --no-default-keyring --keyring /usr/share/keyrings/k6-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C5AD17C747E3415A3642D57D77C6C491D6AC1D69
echo "deb [signed-by=/usr/share/keyrings/k6-archive-keyring.gpg] https://dl.k6.io/deb stable main" | sudo tee /etc/apt/sources.list.d/k6.list
sudo apt-get update
sudo apt-get install k6
  • Fedora/CentOS
sudo dnf install https://dl.k6.io/rpm/repo.rpm
sudo dnf install k6

MacOS

Utilizando homebrew

brew install k6

Windows

  • Chocolatey
choco install k6
  • Winddows Package Manager (winget)
winget install k6 --source winget

Criando seu primeiro teste

Crie um arquivo chamado script.js com o seguinte conteúdo:

// Importação dos módulos necessários
import http from 'k6/http'
import { check, sleep } from 'k6'
 
// Função principal do teste
export default function (data) {
    const url = "https://test-api.k6.io/public/crocodiles/"
    // Faz uma requisição GET para a URL
    const res = http.get(url)
    // Pausa entre requisições
    sleep(1)
}

Para executar o teste, execute o seguinte comando:

k6 run script.js

Este comando, executa o script com 1 usuário virtual (VU) por 1 iteração, pois não foi definida uma configuração específica de carga

Para configurar o número de usuários virtuais (VUs) e o número de iterações, você pode adicionar as seguintes opções ao comando de execução:

k6 run script.js --vus 10 --iterations 10

Onde será executado o teste com 10 usuários simultâneos por 30 segundos.