2
respostas

Lentidão e travamento durante execução do Cypress

Bom dia pessoal. Tudo bem?

Tenho um note bem acima das configurações recomendadas no site oficial do Cypress. Instalei/ atualizei as dependências e também uso o nvm para gerenciar versões do node pois, atualmente trabalho em projetos que usam versões diferentes de node.

Mesmo assim, e seguindo a recomendação da instrutora, na aula 5, sempre que rodo o npm run test, qualquer tipo de uso que eu tente é muito lento à ponto de ser impraticável estudar.

Professora e/ou alunos, por favor, alguém tem idéia do que fazer? Vou passar detalhes do meu ambiente abaixo:

package.json

{
  "name": "primeiro-e2e",
  "version": "1.0.0",
  "description": "Primeiro projeto com Cypress",
  "main": "index.js",
  "scripts": {
    "test": "npx cypress open"
  },
  "author": "Osvaldo Costa",
  "license": "ISC",
  "devDependencies": {
    "cypress": "^10.4.0"
  }
}

AmbienteMuito obrigado pelo apoio!

2 respostas

Na tentativa de resolver, Tentei ajustar as configuração do cypress.config.js conforme abaixo:

const { defineConfig } = require("cypress");

module.exports = defineConfig({
  numTestsKeptInMemory: 0,
  video: false,
  screenshotOnRunFailure: false,
  trashAssetsBeforeRuns: false,
  e2e: {
    setupNodeEvents(on, config) {
      // implement node event listeners here
    },
  },
  projectId: "xyzxyz"
});

Chequei se algo estava sendo consumindo muito processamento e também chequei no dev tools se tinha algo inconsistente e aparentemente tudo ok.

Alguma sugestão, por favor para eu seguir com o curso?

Oi Oswaldo, tudo bem?

Aparentemente existia um bug do próprio Cypress, relatado nessa issue. É uma issue um pouco antiga e teoricamente o time dev do Cypress trabalhou na correção (ver esse pull).

Você pode tentar um diagnóstico usando o gerenciador de memória do seu sistema operacional ou alguma ferramenta como o htop para verificar exatamente quais processos estão rodando e quanto estão consumindo. Em paralelo, pode fazer um teste com cypress run (documentação aqui) ao invés de cypress open, que deve ser capaz de executar os testes sem sobrecarregar tanto com a parte do navegador.

Bons estudos ;)