Automação de Login com Cypress
Automatizar o fluxo de login de uma aplicação web com Cypress.
- em 1 a 2 semanas
- 6 a 10 h em 1 a 2 semanas
- o que você entrega
- Repositório o que você entrega
- com checkpoint
- 5 etapas com checkpoint
- de aceite
- 8 requisitos de aceite
Por que este projeto
Toda vez que alguém muda o código de um site, o login pode quebrar, e ninguém quer descobrir isso pelo cliente. Automatizar o teste de login é o primeiro passo em automação: um robô que abre o site, preenche, clica e confere. Você vai fazer isso com Cypress contra um site de prática, cobrindo o caminho feliz e os erros, do jeito que se faz numa empresa.
Você vai sair sabendo
O que precisa estar lá no fim
É o contrato do projeto. Quando os 8 estiverem verdade, você terminou.
- Projeto com Cypress instalado e configurado
- O site de prática testado está declarado no README
- Pelo menos 5 cenários: login com sucesso, senha errada, usuário inexistente, campos vazios e logout
- Seletores estáveis (atributos data-cy, data-test ou id), não por texto nem por posição, ou justificativa no README quando o site não oferece
- Cada cenário confere o resultado: URL depois do login, mensagem de erro, ou volta à tela de login após logout
- Credenciais fora do código, num cypress.env.json ignorado pelo git, com um exemplo versionado
- npm test roda os specs em modo headless
- README com como rodar e um print do relatório da execução
Etapas
Setup
1 h- npm init, instale o Cypress, abra uma vez com npx cypress open para ele criar a estrutura.
- Escolha o site de prática e anote no README.
Pronto quando: O Cypress abre e mostra a pasta de specs.
Primeiro cenário
1 a 2 h- Escreva login.cy.js com o caminho feliz: visita, preenche, clica, confere a URL.
Pronto quando: O cenário passa em verde no runner.
Cenários de erro
2 a 3 h- Senha errada, usuário inexistente e campos vazios, cada um conferindo a mensagem certa.
- Logout voltando para a tela de login.
Pronto quando: Os cinco cenários passam.
Seletores e credenciais
1 h- Troque seletores frágeis por atributos estáveis.
- Mova usuário e senha para cypress.env.json e crie o exemplo.
Pronto quando: Nenhuma senha aparece no código versionado.
Headless e documentar
1 h- Crie o script test com cypress run, rode, tire o print do relatório.
- Escreva o README.
Pronto quando: npm test roda tudo no terminal e o README mostra o resultado.
Entrega
Terminou? Marque a conclusão e o projeto vira parte do seu perfil.
Depois
Ensinei um robô a fazer login por mim. Automatizei o fluxo de login de um site de prática com Cypress: sucesso, senha errada, usuário inexistente, campos vazios e logout. Cinco cenários, rodando no terminal com um comando. O que aprendi: • Seletores estáveis em vez de texto ou posição • Asserção de URL e de mensagem em cada cenário • Credenciais fora do código O cenário que mais deu trabalho foi [conta aqui]. Repositório com o relatório nos comentários. #qa #cypress #automacaodetestes #boranatech