Garantir a qualidade e estabilidade da API ServeRest, validando regras de negócio, fluxos de autenticação (JWT) e operações CRUD nos endpoints de usuários, login e produtos.
- Tipo de Teste: Testes funcionais de API (Caixa Preta).
- Camada: Integração / Serviços (HTTP).
- Ferramentas: Python 3, Pytest, Requests.
- Coberto:
- Gestão de Usuários (CRUD completo).
- Autenticação e geração de token (Login).
- Não Coberto:
- Testes de carga/performance.
- Endpoint de carrinhos.
- Testes de interface (UI).
- Listar usuários (sucesso)
- Cadastrar usuário (sucesso/erro)
- Buscar usuário por ID (sucesso/inexistente)
- Atualizar usuário (sucesso)
- Excluir usuário (sucesso/inexistente)
- Login com credenciais corretas (sucesso + token)
- Login com senha errada
- Login com email inexistente
- Login com campos vazios
- Listar produtos
- Cadastrar produto com token de admin
- Cadastrar produto sem token de admin
- Buscar produto por ID
- Atualizar produto
- Excluir produto
- Isolamento: Dados devem ser criados dinamicamente no setup de cada teste.
- Independência: O teste não deve depender do sucesso de outro.
- Validação: Mínimo de 1 assert para status code e 1 assert para o corpo da resposta (JSON).
- Limpeza: Nenhum teste deve deixar lixo no banco (uso de IDs gerados no ato).