Ir para o conteúdo principal

Usando o Cypress

2.1 Requisitos do Ambiente

Para começar a trabalhar no projeto, você precisa garantir que seu ambiente de desenvolvimento e testes esteja configurado corretamente:

  • Node.js (versão recomendada pelo projeto, v20.16.0)

  • npm  para gerenciamento de pacotes

  • Git para controle de versão e acesso ao repositório

  • Editor de código (VSCode recomendado)

  • Cypress instalado localmente v13.17.0

  • Browsers suportados para execução dos testes (Chrome, Edge)

  • Configurar variáveis de ambiente com dados sensíveis (ex: credenciais, URLs) usando .env ou cypress.env.json

2.2 Clonando o Repositório e Configuração Inicial

  1. Clone o repositório principal do projeto:

    git clone https://git.pdv.moda/desenvolvimento/qualidade.git
  2. Instale as dependências do projeto:

    npm install
  3. Configure variáveis de ambiente:

    • Acesse o arquivo: /cypress/support/config/variaveis.js com as credenciais e URLs necessárias, por exemplo:

      // Configuracoes globais

      // nav config
      Cypress.env('retaguarda', 'https://hmg-standard.central.illimitar.com.br/');
      Cypress.env('sync', 'https://hmg-standard-sync.central.illimitar.com.br/');
      Cypress.env('syncPrincipal', `${Cypress.env('sync')}/illi/principal`);

      // auth
      Cypress.env('usuario', 'edson');
      Cypress.env('usuarioilli', 'edsonilli');
      Cypress.env('illi', 'illi');
      Cypress.env('password', 'i123');
      Cypress.env('passwordilli', 'i123');
      Cypress.env('usuariocaixa', 'edsoncx');

      // key API
      Cypress.env('apiProduto', '4bc3e7a9-327e-479e-ae34-1e9d1bdf2364');
      Cypress.env('apiCaixa', '4bc3e7a9-327e-479e-ae34-1e9d1bdf2364');
      Cypress.env('apiUsuario', '4bc3e7a9-327e-479e-ae34-1e9d1bdf2364');

      // pin manual
      Cypress.env('pin', '123');
      Cypress.env('pin99', '1');
      Cypress.env('pin10', '1234');

2.3 Executando os Testes

2.3.1 Executar em modo interativo (UI Cypress)

npx cypress open
  • Use a interface gráfica para escolher os testes que deseja executar

  • Visualize os passos, logs, screenshots e vídeos em tempo real

2.3.2 Executar em modo headless (linha de comando)

npx cypress run
  • Ideal para integração contínua (CI/CD)

  • Configurável para rodar testes específicos, gerar relatórios, etc.

2.4 Comandos Customizados Importantes

Resumo rápido dos comandos customizados disponíveis, exemplos:

  • cy.login() — Realiza login padrão no sistema

  • cy.loginCaixa() — Login para perfil caixa

  • cy.trocaRapida() — Aplica troca rapida no PDV com um produto aleatório.

  • (Listar mais comandos conforme o projeto)

2.5 Dicas Rápidas para Começar

  • Sempre limpe os dados de teste ou use ambientes de homologação dedicados.

  • Explore os testes existentes para entender os fluxos básicos, na pasta e2e.

  • Reporte erros ou dificuldades para o time QA para manter a base atualizada.

  • Utilize o navegador em modo debug para inspeção e investigação dos testes.