Cypress
Papel do Cypress na estratégia de QA da DBSeller
O Cypress é a principal ferramenta de automação de testes adotada pela DBSeller para validação de fluxos críticos e cenários regressivos dos sistemas web, com foco especial no E-Cidade, que possui uma arquitetura altamente complexa e legada.
O Cypress foi escolhido para atuar como reforço da cobertura de testes manuais, garantindo que funcionalidades já validadas continuem funcionando após alterações frequentes, correções de bugs e evoluções constantes do sistema.
Na estratégia de QA da DBSeller, o Cypress não substitui testes manuais, ele:
-
protege fluxos críticos
-
reduz risco de regressões
-
aumenta previsibilidade das entregas
-
libera o QA para análise e validação de novos cenários
Por que o Cypress foi escolhido
A escolha do Cypress não foi apenas por popularidade da ferramenta, mas por sua capacidade de adaptação a um ambiente extremamente desafiador, como o E-Cidade.
O E-Cidade apresenta características que inviabilizam abordagens tradicionais de automação:
-
uso intenso de iframes aninhados
-
DOM legado e pouco semântico
-
elementos sem identificadores únicos
-
re-renderizações constantes
-
tempos de carregamento imprevisíveis
-
componentes antigos e modernos convivendo no mesmo fluxo
O Cypress foi escolhido porque permite:
-
controle total do fluxo de execução
-
criação de comandos customizados
-
maior previsibilidade na sincronização
-
captura nativa de evidências
A partir disso, foi construída uma arquitetura de automação própria, específica para a realidade da DBSeller.
Adaptação do Cypress ao E-Cidade
Para viabilizar a automação no E-Cidade, foi necessário ir além do uso padrão da ferramenta. A equipe de QA desenvolveu uma API interna de automação multi-iframe, capaz de lidar com a estrutura real do sistema.
Essa adaptação permite:
-
busca recursiva em qualquer nível de iframe
-
interação segura com elementos sem ID
-
resistência a DOM instável e page detach
-
validação de toasts e mensagens em múltiplos contextos
-
execução confiável em módulos distintos
Essa arquitetura tornou possível automatizar fluxos que, em cenários tradicionais, seriam considerados inviáveis para automação.
Tipo de testes cobertos pelo Cypress
Na DBSeller, o Cypress é utilizado principalmente para:
-
testes end-to-end (E2E)
-
testes regressivos
-
validação de fluxos críticos
-
verificação de integrações entre módulos
-
healthcheck de ambientes
Os testes automatizados validam o sistema da perspectiva do usuário, navegando por menus, módulos e fluxos completos, simulando o uso real do E-Cidade.
Quando usar Cypress
O Cypress deve ser utilizado quando:
-
o cenário é repetitivo e já validado manualmente
-
existe alto risco de regressão
-
a funcionalidade impacta múltiplos módulos
-
o fluxo é crítico para operação do cliente
-
o custo de falha em produção é alto
-
o teste precisa ser executado com frequência
Exemplos comuns:
Quando não usar Cypress
O Cypress não deve ser a primeira escolha quando:
-
a funcionalidade ainda está em constante mudança
-
o comportamento não está bem definido
-
o cenário exige validação exploratória
-
a análise depende fortemente de interpretação humana
-
o custo de manutenção do teste seria maior que o benefício
Nesses casos, o teste manual é mais adequado e eficiente.
Instalação do Cypress
A instalação do Cypress segue o padrão oficial da ferramenta, utilizando Node.js como base.
Pré-requisitos
-
Node.js versão 18 ou superior
-
Gerenciador de pacotes npm
Instalação das dependências
Abrir o Cypress em modo interativo
Executar os testes em modo headless
Esses comandos permitem executar a suíte de testes tanto localmente quanto em ambientes automatizados.
Arquitetura geral da automação
A automação da DBSeller foi projetada com foco em:
-
confiabilidade
-
manutenibilidade
-
observabilidade
-
evidências completas
-
suporte a interfaces legadas
A estrutura do projeto separa claramente:
-
testes por domínio funcional
-
comandos customizados
-
dados de ambiente
-
evidências por execução
Cada execução gera um RUN-ID, organizando automaticamente vídeos, screenshots e logs, facilitando rastreabilidade e auditoria.
Cypress como parte da arquitetura de QA
Na arquitetura de QA da DBSeller, o Cypress é um pilar de sustentação da qualidade contínua, atuando em conjunto com:
-
testes manuais
-
testes exploratórios
-
análise baseada em risco
Ele não atua isoladamente, mas integrado ao fluxo de QA, garantindo que a evolução constante do sistema não comprometa funcionalidades já estabilizadas.
Importante
Esta página define quando e por que usar o Cypress.
Detalhes de implementação, comandos customizados e estrutura técnica estão documentados no repositório oficial da automação.