forked from EngSwCIC/CAMAAR
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Como Administrador
Quero importar arquivos JSON do SIGAA
Para popular o banco de dados
Cenários de Teste US-98: Importação Básica
-
Importação de arquivo JSON perfeito
- Dado que seleciono o arquivo "turmas_2024.json" válido
- Quando clico em "Importar Dados"
- Então devo ver uma barra de progresso
- E ao final devo ver a mensagem "Sucesso: 15 turmas e 450 alunos importados"
-
Falha com extensão de arquivo incorreta
- Dado que seleciono o arquivo "relatorio.pdf"
- Quando tento fazer o upload
- Então o sistema deve rejeitar o arquivo imediatamente
- E exibir "Apenas arquivos .json são permitidos"
-
Falha com estrutura JSON incorreta
- Dado que seleciono um JSON onde falta o campo obrigatório "id_turma"
- Quando o sistema processa o arquivo
- Então a importação deve ser abortada
- E devo ver o erro "Estrutura inválida: campo 'id_turma' ausente na linha 10"
-
Arquivo excedendo limite de tamanho
- Dado que tento importar um JSON de 50MB (acima do limite configurado)
- Então o sistema deve exibir "O arquivo excede o tamanho máximo permitido (10MB)"
-
Feedback visual de progresso
- Quando inicio uma importação demorada
- Então o botão de importar deve ficar em estado de "Carregando"
- E não devo conseguir clicar nele novamente até o fim do processo
Cenários de Teste US-100: Cadastro de Usuários
-
Criação de novos usuários
- Dado que o JSON contém o aluno "Novo Aluno" inexistente no banco
- Quando a importação finaliza
- Então o sistema deve criar um registro na tabela Users para "Novo Aluno"
- E o status deve ser "Aguardando Senha"
-
Ignorar usuários com dados incompletos
- Dado que o JSON contém um aluno sem matrícula
- Quando a importação ocorre
- Então esse aluno específico não deve ser salvo
- E o sistema deve continuar importando os demais
Cenários de Teste US-108: Atualização
-
Atualizar vínculo de turma
- Dado que o aluno "João" estava na Turma A
- E o novo JSON coloca o aluno "João" na Turma B
- Quando importo o arquivo
- Então o aluno "João" deve estar vinculado agora à Turma B
- E o vínculo com a Turma A deve ser removido ou inativado
-
Não duplicar usuário existente
- Dado que "Maria" já existe no banco com matrícula "123"
- Quando importo um JSON contendo "Maria" com matrícula "123"
- Então o sistema deve atualizar os dados de "Maria" se necessário
- Mas a contagem de usuários no banco não deve aumentar
-
Conflito de ID duplicado no arquivo
- Dado que o próprio arquivo JSON contém duas entradas diferentes com a mesma matrícula "999"
- Quando o sistema valida o arquivo
- Então deve abortar a operação
- E informar "Duplicidade de matrícula '999' encontrada no arquivo"
-
Integridade histórica
- Dado que o aluno "Pedro" não consta no novo JSON importado
- Então o registro de "Pedro" no banco deve permanecer intacto (não deletar)
- Apenas seus vínculos com turmas ativas do semestre atual devem ser revisados
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request