Este repositorio contem a entrega do Teste Pratico de QA da BeTalent, cobrindo as duas frentes solicitadas:
- UI Testing: Sauce Demo.
- API Testing: Restful-Booker.
A entrega foi organizada para evidenciar planejamento, execucao, automacao, resultados, bugs, riscos, sugestoes de melhoria e evidencias.
Use esta secao como ponto de partida para avaliacao.
| Foco da avaliacao | Artefato | Link |
|---|---|---|
| README detalhado, premissas, ferramentas e execucao | Documento principal | README.md |
| Plano de testes de UI | Planejamento, escopo, massa de dados e rastreabilidade | ui-tests/docs/ui-test-plan.md |
| Resultados, bugs, riscos e melhorias de UI | Relatorio de execucao exploratoria | ui-tests/docs/ui-test-report.md |
| Testes automatizados de UI | Suite Playwright com Page Object Model | tests/ui |
| Plano de testes de API | Estrategia, VADER, cenarios e rastreabilidade | api-tests/docs/api-test-plan.md |
| Resultados, bugs, riscos e melhorias de API | Relatorio da execucao da Restful-Booker | api-tests/docs/api-test-report.md |
| Collection JSON obrigatoria | Collection Postman importavel | api-tests/collection/restful-booker.postman_collection.json |
| Resultado exportado da execucao da API | Arquivo de test run do Postman | api-tests/collection/Restful-Booker API - Level 1 CRUD and Auth.postman_test_run.json |
| Evidencias de UI | Prints e GIFs dos bugs encontrados | evidencias/ui |
| Evidencias de API | Evidencia da execucao da collection | evidencias/api |
| Requisito do edital | Status | Onde avaliar |
|---|---|---|
| Login com diferentes tipos de usuarios | Coberto no plano, exploratorio e Happy Path automatizado | Plano UI, Relatorio UI, login-com-usuario-padrao.spec.js |
| Ordenacao e filtragem de produtos | Coberto no plano, relatorio e automacao de ordenacao | Plano UI, Relatorio UI, ordenacao-produtos.spec.js |
| Fluxo completo de compra | Automatizado | checkout-completo.spec.js |
| Remocao de itens do carrinho | Automatizado | carrinho-adicao-remocao.spec.js |
| Navegacao entre paginas | Automatizado | navegacao-entre-paginas.spec.js |
| Logout | Automatizado | logout.spec.js |
| Analise de bugs | Documentada com evidencias | Relatorio UI, evidencias/ui |
| Sugestoes de melhorias | Documentadas | Relatorio UI |
| Analise de riscos | Documentada | Relatorio UI |
| Diferencial: testes automatizados | Entregue com Playwright e Page Object Model | tests/ui, pages, components |
| Requisito do edital | Status | Onde avaliar |
|---|---|---|
| Autenticacao basica | Coberta na collection e documentacao | Collection Postman, Plano API |
| CRUD de reservas | Coberto com request chaining | Collection Postman, Relatorio API |
| Validacao de campos obrigatorios | Coberta em cenario negativo e bug reportado | Plano API, Relatorio API |
| Collection de requests | Entregue em JSON | restful-booker.postman_collection.json |
| Documentacao dos cenarios | Entregue | api-test-plan.md |
| Resultados dos testes | Entregue | api-test-report.md |
| Analise de bugs | Entregue | api-test-report.md |
| Variaveis de ambiente/collection | Configuradas na collection para baseURL, token e bookingId |
Collection Postman |
| Diferencial: automacao via scripts | Entregue com scripts Postman e request chaining | Collection Postman |
qa-challenge-betalent/
|-- components/
| `-- MenuComponent.js
|-- pages/
| |-- CartPage.js
| |-- CheckoutPage.js
| |-- LoginPage.js
| `-- ProductsPage.js
|-- tests/
| `-- ui/
| |-- carrinho-adicao-remocao.spec.js
| |-- checkout-completo.spec.js
| |-- login-com-usuario-padrao.spec.js
| |-- logout.spec.js
| |-- navegacao-entre-paginas.spec.js
| `-- ordenacao-produtos.spec.js
|-- ui-tests/
| `-- docs/
| |-- ui-test-plan.md
| `-- ui-test-report.md
|-- api-tests/
| |-- collection/
| | |-- restful-booker.postman_collection.json
| | `-- Restful-Booker API - Level 1 CRUD and Auth.postman_test_run.json
| `-- docs/
| |-- api-test-plan.md
| `-- api-test-report.md
|-- evidencias/
| |-- api/
| `-- ui/
| |-- carrinho/
| |-- checkout/
| |-- inventory/
| `-- login/
|-- playwright.config.js
|-- package.json
|-- package-lock.json
`-- README.md
| Ferramenta | Uso |
|---|---|
| Markdown | Documentacao da entrega |
| Playwright | Automacao dos testes funcionais de UI |
| Node.js | Runtime da suite automatizada |
| JavaScript | Linguagem dos testes e scripts |
| Page Object Model | Organizacao da automacao de UI |
| Postman | Collection, execucao e automacao dos testes de API |
| Postman Tests | Validacoes, captura de token e request chaining |
Na raiz do projeto, instale as dependencias:
npm installInstale os navegadores do Playwright:
npx playwright installExecute a suite em modo headless:
npx playwright test tests/uiExecute com navegador visivel:
npx playwright test tests/ui --headedAbra o relatorio HTML apos a execucao:
npx playwright show-report- Abrir o Postman.
- Clicar em
Import. - Importar o arquivo api-tests/collection/restful-booker.postman_collection.json.
- Confirmar a variavel
baseURLcom o valorhttps://restful-booker.herokuapp.com. - Abrir a collection importada.
- Executar pelo
Run collection, mantendo a ordem original dos requests. - Conferir os resultados e as variaveis preenchidas automaticamente:
token, capturado emPOST /auth.bookingId, capturado emPOST /booking.
- O Sauce Demo e a Restful-Booker sao ambientes publicos de pratica e podem apresentar instabilidade eventual.
- A automacao de UI prioriza o Happy Path com
standard_user, enquanto os demais usuarios foram explorados e documentados como fonte de comportamentos inconsistentes, bugs e riscos. - A API foi validada por Postman porque o edital exige collection em JSON, e os scripts internos da collection atendem ao diferencial de automacao via scripts.
- Testes formais de performance, seguranca e acessibilidade nao foram tratados como entrega principal; foram considerados oportunidades futuras para evolucao do Nivel 2.
A solucao cobre os requisitos obrigatorios de Nivel 1:
- Documentacao em Markdown.
- Collection Postman em JSON.
- Evidencias em imagem e GIF.
- Plano de testes de UI.
- Casos de teste de UI com resultados, bugs, melhorias e riscos.
- Testes de UI para login, ordenacao, compra, carrinho, navegacao e logout.
- Plano de testes de API.
- Collection de API com autenticacao, CRUD, validacoes e resultados.
- Analise de bugs, riscos e sugestoes de melhoria para API.
Tambem foram entregues diferenciais de Nivel 2:
- Automacao de UI com Playwright.
- Estrutura de automacao com Page Object Model.
- Automacao de API via scripts Postman.
- Request chaining com captura de
tokenebookingId. - Estrategia VADER para orientar cenarios negativos e analise de risco.