/k6_for_studies

Repository with Performance tests

Primary LanguageJavaScriptMIT LicenseMIT

K6-FOR-STUDIES

Projeto com testes automatizados de PERFORMANCE, utilizando o framework: K6

Utilizado:


Contexto

Index README.


Pre-requisitos


Configuração

Tips:

Utilizar o Scoop ou Chocolatey para baixar os packages sinalizados acima.

Exemplos

Yarn:

choco install yarn

K6:

choco install k6

Docker:

choco install docker

Clonar o projeto:

git clone https://github.com/uLucasFraga/k6_for_studies.git
  • Usar o terminal para instalar as dependências do package.json, por exemplo:
yarn install

IMPORTANTE:

  • Para escolher o ambiente a testar:

É necessário a escolha do ambiente através process.ENV.

Por exemplo: env=DEV yarn loadTest para DEV ou env=LOCAL yarn loadTest para LOCAL. Se não for inputado nenhum valor, o default é LOCAL.


Instalação

Limpar o projeto & instalar todas as dependências via package.json:

cd /k6-for-studies
yarn clean
yarn install

Estrutura

A estrutura do repositório segue a arquitetura abaixo:

📦k6-for-studies
┣ 📂dashboards
┃ ┗ 📜k6-load-testing-results.json
┣ 📂docs
┃ ┗ 📂img
┃ ┃ ┗ 📜img.png
┣ 📂src
┃ ┣ 📂requests
┃ ┃ ┗ 📜users.request.js
┃ ┣ 📂simulations
┃ ┃ ┗ 📜fullFlowLoad.test.js
┃ ┃ ┗ 📜fullFlowStress.test.js
┃ ┣ 📂utils
┃ ┃ ┗ 📜utils.js
┣ 📜.babelrc
┣ 📜.dockerignore
┣ 📜.gitignore
┣ 📜docker-compose.yml
┣ 📜grafana-dashboard.yaml
┣ 📜grafana-datasource.yaml
┣ 📜LICENSE
┣ 📜package.json
┣ 📜README.md
┣ 📜webpack.config.js
┣ 📜yarn-lock


Como Testar

Após confirmar as configurações anteriores, seguir os passos abaixo:

Local

IMPORTANTE: Os testes rodando localmente, não é gerado report no grafana.

Para rodar os testes de Load com o yarn:

yarn local:loadTest

Para rodar os testes de Load sem o yarn:

k6 run -e env=LOCAL src/simulations/fullFlowLoad.test.js

Para rodar os testes de Stress com o yarn:

yarn local:stressTest

Para rodar os testes de Stress sem o yarn:

k6 run -e env=LOCAL src/simulations/fullFlowStress.test.js

Docker

Para rodar os testes de Load com o yarn:

yarn docker:up
yarn docker:loadTest
yarn docker:down

Para rodar os testes de Stress sem o yarn:

docker-compose up -d influxdb grafana serverest && docker-compose run k6 run -e env=LOCAL src/simulations/fullFlowStress.test.js

Como visualizar o Report

IMPORTANTE: Os testes via docker será gerado um dashboard no grafana: Dashboard do Grafana

Exemplo de dados gerados no Grafana: DASHBOARD


Suporte

  • contato:

ulucasfraga@gmail.com


Licença

Licença