Vale a pena utilizar o Cypress?

Renato Nagashima
3 min readApr 8, 2021

--

Introdução:

O Cypress é uma ferramenta para automação de testes de software lançada em 2014 que está sendo bastante utilizada em projetos no Brasil e no mundo.

É uma ferramenta amigável de fácil instalação e não necessita de nenhuma configuração inicial como outros ferramentas como o Selenium por exemplo.

O Cypress possibilita escrever testes rápidos e robustos que evitam os falsos positivos, como demoras de renderização de elementos na tela, problemas de lentidão na rede por exemplo.

Objetivo:

O intuito deste artigo, é auxiliar na escolha de uma ferramenta de automação de seus testes.

Experiência:

Conheci o Cypress através de uma conversa com um amigo em 2016 e através de uma prova de conceito iniciei um projeto para substituir o Selenium.

Depois deste primeiro contato, encontrei muitas vantagens comparado a outras ferramentas que utilizavam o Selenium como base.

Listarei algumas vantagens que pude notar com o tempo:

Instalação:

A instalação é feita utilizando apenas um comando “npm install cypress” e com isso uma gama de exemplos executáveis vem de brinde para te auxiliar no ponta pé inicial na criação do seu primeiro teste.

Simplicidade:

Por ser uma ferramenta moderna e simples, a curva de aprendizado é bem rápida. Basta ter um conhecimento básico em Javascript e noções de busca de seletores.

Tipos de testes automatizados suportados:

Documentação:

A documentação oficial é ampla e detalhada como bastante exemplos para facilitar o entendimento nas implementações.

Funcionalidades:

  • Dashboard: é um serviço Cypress que dá acesso aos testes que você gravou efornece uma visão sobre o que aconteceu durante a execução de seus testes;
  • Mock: é possível criar um mock da API, viabilizando o testes e2e sem o backend;
  • Selector playground: ferramenta para capturar um elemento (ID, classe, botão, etc) no DOM (Document Object Model);
  • Browser: opera dentro do navegador, o que torna as análises mais rápidas e assertivas;
  • Depurabilidade: a ferramenta disponibiliza um modo debug chamado Time Travel dentro da própria interface, que permite uma análise mais direta e assertiva dos passos na execução do teste;
  • Espera automática: o Cypress espera que os elementos existam, que os elementos parem de ser animados ou que as solicitações de rede específicas terminem antes de prosseguir.

Integração:

O Cypress permite integração com inúmeros plugins e ferramentas:

  • Allure report: gerar relatórios e métricas de testes;
  • Slack: gerar relatórios de testes;
  • Percy: executar testes de regressão visual;
  • Git: executar testes na esteira;
  • Docker: executar testes em containers;
  • Cucumber: criar cenários de testes com o Gherkin.

Comunidade:

Possui uma comunidade muito ativa e colaborativa que vem compartilhando muitos vídeos e cursos na internet, facilitando bastante o aprendizado de novos iniciantes nesta nova ferramenta.

Conclusão

Pelas experiências adquiridas nos projetos com automação, notei que o Cypress tem agregado muito valor, agilizando processos de escrita e manutenção de scripts.

É uma ferramenta simples com execuções rápidas e robustas, que cria testes assertivos e confiáveis.

Respondendo a pergunta no título… sim, vale muito a pena ter o Cypress como ferramenta de automação de teste nos projetos, visto as vantagens citadas acima.

Faça um teste com o Cypress, irá te surpreender, acredite!

Documentação oficial: https://www.cypress.io/

--

--