Casos de Teste ‐ Usuários - AndyTex2003/ppp-turma2 GitHub Wiki

1. Registro e Login (Endpoints /users/register e /auth/login)

ID do CT Cenário Pré-Condição Passo a Passo (Execução) Resultado Esperado Status
CT-AUTH-006 Login Válido de Usuário Padrão Usuário Padrão (Ex: 'joao_silva') criado e ativo no sistema. POST /auth/login com username e senha válidos. 200 OK. Retorna um token JWT (accessToken) válido. PASSOU
CT-AUTH-007 Login com Senha Inválida Usuário Padrão ativo existe. POST /auth/login com username correto e password incorreta. 401 Unauthorized ou 400 Bad Request (Credenciais inválidas). PASSOU
CT-AUTH-008 Login com Usuário Inexistente Usuário 'username_nao_existe' não cadastrado no sistema. POST /auth/login com username não registrado e qualquer senha. 401 Unauthorized ou 400 Bad Request (Credenciais inválidas). PASSOU

2. Permissões de Consulta e Restrição (RBAC)

Este cenário verifica se o Usuário Padrão, após autenticação, tem permissão correta para acessar (GET) e é corretamente restringido (POST/DELETE) dos recursos de Filmes e Gêneros.

ID do CT Cenário Pré-Condição Passo a Passo (Execução) Resultado Esperado Status
CT-PERM-001 Usuário: Listar Filmes (Positivo) Usuário Padrão logado (CT-AUTH-006 PASSOU). GET /movies. 200 OK. Retorna lista de filmes. PASSOU
CT-PERM-002 Usuário: Listar Gêneros (Positivo) Usuário Padrão logado (CT-AUTH-006 PASSOU). GET /genres. 200 OK. Retorna lista de gêneros. PASSOU
CT-PERM-003 Usuário: Tentar Registrar Filme (Negativo) Usuário Padrão logado. POST /movies/register com dados de filme. 403 Forbidden (ou 401 Unauthorized). PASSOU
CT-PERM-004 Usuário: Tentar Deletar Filme (Negativo) Usuário Padrão logado. DELETE /movies/{id}. 403 Forbidden (ou 401 Unauthorized). PASSOU
CT-PERM-005 Usuário: Tentar Registrar Gênero (Negativo) Usuário Padrão logado. POST /genres/register com dados de gênero. 403 Forbidden (ou 401 Unauthorized). PASSOU
CT-PERM-006 Usuário: Tentar Deletar Gênero (Negativo) Usuário Padrão logado. DELETE /genres/{id}. 403 Forbidden (ou 401 Unauthorized). PASSOU