-
Notifications
You must be signed in to change notification settings - Fork 2
CI CD Testes Frontend
Para melhor manutenibilidade do código fonte bem toda solicitação de Merge Request na branch de develop, será executado as rotinas de testes a fim de validar as funcionalidades existentes.

Este workflow automatiza o processo de teste do frontend do projeto. Ele realiza uma instalação limpa das dependências do Node.js, armazena em cache e restaura as dependências para aumentar a velocidade de execução, compila o código-fonte e executa testes em diferentes versões do Node.js. Isso é feito sempre que ocorre um push ou pull request para a branch "develop".
O workflow é executado em uma máquina virtual Ubuntu usando o "runs-on: ubuntu-latest". É importante configurar o ambiente antes de executar os testes para garantir que todas as dependências necessárias estejam instaladas. O workflow usa o "actions/setup-node@v3" para instalar e configurar diferentes versões do Node.js especificadas na matriz.
O próximo passo é instalar as dependências necessárias para executar os testes. Isso é feito usando o "npm ci" em vez do "npm install". O "npm ci" instala as dependências do pacote diretamente do arquivo "package-lock.json" e é mais rápido e confiável para usar em ambientes de CI/CD.
Com as dependências instaladas, o workflow executa os testes usando o comando "npm run test:unit". Este comando executa os testes de unidade definidos no código-fonte do projeto.
Para aumentar a velocidade de execução do workflow, o "actions/setup-node@v3" pode armazenar em cache as dependências do Node.js. Isso é feito usando a opção "cache: 'npm'" e especificando o caminho para o arquivo "package-lock.json" usando a opção "cache-dependency-path: './frontend/package-lock.json'". Quando as dependências são armazenadas em cache, o workflow pode restaurá-las em execuções futuras, economizando tempo e recursos.
Este workflow é projetado para ser executado no Github Actions, mas também pode ser executado localmente com o Github CLI. Para fazer isso, você precisa:
- Clonar o repositório do projeto:
git clone https://github.com/user/repo.git - Acessar a pasta frontend:
cd repo/frontend - Instalar o Github CLI: Github CLI
- Autenticar com sua conta Github:
gh auth login - Rodar o workflow:
gh workflow run frontend-unit-tests.yml
Este workflow automatiza o processo de teste do frontend do projeto, tornando-o rápido, confiável e consistente. Ele é executado sempre que há um push ou pull request na branch "develop", garantindo que todos os novos recursos e alterações de código sejam testados antes de serem incorporados ao projeto. Ao armazenar em cache e restaurar as dependências do Node.js, o workflow economiza tempo e recursos, tornando-o ainda mais eficiente.