Teste técnico para a vaga de Analista de Testes. Automação dos fluxos de Login, Carrinho e Checkout do site SauceDemo usando Cypress.
| ID | Fluxo | Tipo |
|---|---|---|
| CT-001 | Login com credenciais válidas | Caminho feliz |
| CT-002 | Login com usuário bloqueado | Alternativo |
| CT-003 | Login com campos vazios | Erro |
| CT-004 | Login com senha incorreta | Erro |
| CT-005 | Adicionar produto ao carrinho | Caminho feliz |
| CT-006 | Remover produto do carrinho | Alternativo |
| CT-007 | Visualizar carrinho com produto | Caminho feliz |
| CT-008 | Checkout sem preencher campos | Erro |
| CT-009 | Finalizar compra com sucesso | Caminho feliz |
| CT-010 | Validar resumo do pedido | Caminho feliz |
Pré-requisitos: Node.js 18+ e npm
# Instalar dependências
npm install
# Executar testes em modo headless (terminal)
npm test
# Abrir a interface interativa do Cypress
npm run test:opensauce-demo-tests/
├── cypress/
│ ├── e2e/
│ │ ├── 01-login.cy.js # CT-001 a CT-004
│ │ ├── 02-carrinho.cy.js # CT-005 a CT-007
│ │ └── 03-checkout.cy.js # CT-008 a CT-010
│ └── support/
│ ├── commands.js # Comandos customizados (login, addToCart)
│ └── e2e.js
├── .github/
│ └── workflows/
│ └── cypress.yml # Pipeline CI/CD (GitHub Actions)
├── cypress.config.js
└── package.json
O pipeline é ativado em todo push para main ou develop e em pull requests. Em caso de falha, os screenshots são publicados como artefatos na aba Actions do GitHub.
| Atividade | Tempo |
|---|---|
| Análise e escrita de história + critérios | 1,5h |
| Escrita dos 10 casos de teste | 2,5h |
| Execução manual | 1,7h |
| Desenvolvimento Cypress | 5h |
| Pipeline CI | 1h |
| Revisão final | 0,5h |
| Total | ~12h |