Este projeto visa realizar testes automatizados de API utilizando a ferramenta Cypress em conjunto com a API ServeREST.
O ServeREST é uma API RESTful de teste, disponível em ServeREST GitHub. Certifique-se de referenciar este projeto ao utilizar a API em seus testes.
Este projeto está integrado ao GitHub Actions para automação de testes. Os testes são executados automaticamente em cada push para o repositório.
Certifique-se de ter as versões corretas do Node.js, Cypress e ServeREST instaladas.
{ "node": "20.9.0", "cypress": "13.6.1", "serveRest": "2.28" }
- Clonar o repositório e instale as dependências
git clone [email protected]:LeohsPaixao/cypress-serveRest.git
cd cypress-serveRest
npm install
-
Inicie o servidor ServeRest
Obs.: É necessário abrir um terminal separado para rodar o servidor do ServeRest.
npm start # Abrirá na porta 3000 (Default)
- Rode os testes
npm run cy:open # Rode os testes no modo interativo do cypress
npm run cy:run # Rode os testes no modo headless do cypress
Em Desenvolvimento 🛠️
Este projeto visa utilizar o Allure Report para os reports dos testes tanto no Github Actions quanto localmente. Atualizações sobre o progresso dessa implementação serão fornecidas.
A seguir estão alguns exemplos de código para demonstrar como usar a ferramenta Cypress em conjunto com a API ServeREST.
describe('Teste de Login via API', () => {
it('Deve realizar o login com sucesso', () => {
cy.request({
log: true,
failOnStatusCode: true,
method: 'POST',
url: '/login',
headers: {
"accept": "application/json",
"content-type": "application/json"
},
body: {
"email": "[email protected]",
"password": "teste"
},
}).then((response) => {
console.log(response);
expect(response.status).to.equal(200);
expect(response.body.message).to.equal("Login realizado com sucesso");
});
});
})
Este projeto é licenciado sob a MIT License - veja o arquivo LICENSE para detalhes.