Você deve implementar testes e2e utilizando Cypress ou playwright na página da Wikipedia e GraphqlZero API
A entrega deve ser feita através de um projeto no github contendo instruções claras sobre como executar os testes
- Se atende ao que foi pedido;
- Qualidade dos testes;
- Organização do código;
- Implementar a execução dos testes como
workflow_dispatch
no Github Actions;- Usar alguma ferramenta de regressão visual;
- Documentação;
Você deve ter GIT e Node.JS instalados em sua máquina para facilitar nosso processo de instação.
Sugestão de artigo para instação dos pré-requisitos blog.
-
Para usar o Playwright é preciso instalar via NPM com o seguinte comando
npm install playwright --latest
-
Ceritifique que o Playwright foi instalado em uma versao atual
npm playwright --version
A versão indicada seria 9.8.1 ou superior (para melhor compatibilidade do código)
- Clone o repositório em sua maquina local no diretorio de sua preferencia, abra-o no VS Code
git clone https://github.com/robsonnegrei/Quality_Assurance_Playwright.git
cd Quality_Assurance_Playwright
.code
- Rodar todos os testes do diretorio /tests
npx playwright test
- Mostrar o resultado da ultima run em formato de reporte consilidado
npx playright show-report
Exemplo de Relatório Esperado:
Para a resolução do desafio técnico, foi realizada a implementação de automação via Playwright.
Principais Diretórios e Arquivos:
- Arquivo playwright.config.js: Configurações do Playwright.
- Arquivo package.json: Dependências do projeto.
A organização do repositório apresenta os arquivos de testes para as duas etapas do exercício:
- Diretório tests/: Contém os arquivos de testes.
- tests/wiki.spec.js => Testes E2E para validação da pagina do Wikipedia
- tests/graphql.spec.js => Testes API para validação do GraphQLZero - Fake Online GraphQL API for Testing and Prototyping
Os testes foram divididos por página e contexto, todos os testes referentes a validação da pagina do wikipedia estão no arquivo 'tests/wiki.spec.js' e implementados para cobrir as funcionalidades principais da página, incluindo navegação, busca e verificação de conteúdo pesquisado.
Testes Implementados:
1. Estou na Wikipedia
2. Pesquisa por Brasil
3. Verifica se a Pagina Wiki do resultado para a busca "Brasil" contém os textos e seletores principais
Os testes foram organizados por requisição, afim de cobrir o query USER e todos os schemas disponiveis
Testes Implementados:
1. Get a User => deve buscar User com id=1 no Endpoint do GraphQL e
responder corretamente
2. Get a Post => deve buscar Post com id=1 no Endpoint do GraphQL e responder corretamente
3. Get User`s Posts => deve buscar todos os posts de um user com id=1 no Endpoint do GraphQL e responder corretamente
4. Get a Photo´s Album => deve buscar o album de uma foto com id=5 no Endpoint do GraphQL e responder corretamente
5. Get All Posts => deve buscar todos os posts no Endpoint do GraphQL e responder corretamente
6. Create a Post => deve criar um post no Endpoint do GraphQL e responder corretamente
7. Update a Post => deve atualizar um post com id=1 no Endpoint do GraphQL e responder corretamente
8. Delete a Post => deve deletar um post com id=1 no Endpoint do GraphQL e responder corretamente
Utilização do Playwright pela sua robustez e facilidade de integração com CI/CD. Estrutura modular para facilitar a manutenção e expansão dos testes.