362 lines
8.2 KiB
Markdown
362 lines
8.2 KiB
Markdown
# 🧪 Guia de Teste - Sistema de Banco de Dados
|
||
|
||
## 🚀 Como Testar o Novo Sistema
|
||
|
||
### 1️⃣ Abrir a Aplicação
|
||
```bash
|
||
# Iniciar servidor local (escolha um):
|
||
python -m http.server 8000
|
||
# ou
|
||
npx http-server
|
||
# ou
|
||
php -S localhost:8000
|
||
```
|
||
|
||
Depois abra: `http://localhost:8000`
|
||
|
||
---
|
||
|
||
### 2️⃣ Verificar Carregamento Automático
|
||
|
||
#### No Console do Navegador (F12):
|
||
Você deve ver estas mensagens:
|
||
|
||
```
|
||
✅ Data Manager carregado e disponível globalmente
|
||
🗄️ Inicializando Data Manager v1.0.0
|
||
📥 Cache vazio ou desatualizado. Carregando dados...
|
||
🔄 Iniciando atualização completa dos dados...
|
||
📊 Carregando Cantoneiras...
|
||
✅ Cantoneiras: 39 itens carregados
|
||
📊 Carregando Barras Redondas...
|
||
✅ Barras Redondas: X itens carregados
|
||
...
|
||
🎉 Atualização completa finalizada!
|
||
✅ Sucessos: 10
|
||
❌ Erros: 0
|
||
```
|
||
|
||
---
|
||
|
||
### 3️⃣ Testar Catálogo de Cantoneiras
|
||
|
||
#### Acessar o Catálogo:
|
||
1. Clicar no menu lateral: **MATERIAIS** → **Catálogo de Perfis**
|
||
2. Selecionar aba **Cantoneiras**
|
||
|
||
#### Verificar:
|
||
- ✅ Tabela carrega automaticamente
|
||
- ✅ 39 cantoneiras aparecem
|
||
- ✅ Dados corretos (nome, dimensões, peso, etc.)
|
||
- ✅ Badges coloridos por categoria
|
||
|
||
---
|
||
|
||
### 4️⃣ Testar Filtros
|
||
|
||
#### Filtro por Tamanho:
|
||
1. Selecionar "Pequena (L25-L50)" no dropdown
|
||
2. Verificar que apenas cantoneiras pequenas aparecem
|
||
3. Contador atualiza automaticamente
|
||
|
||
#### Filtro por Peso:
|
||
1. Digitar "10" no campo "Peso Máximo"
|
||
2. Verificar que apenas cantoneiras ≤ 10 kg/m aparecem
|
||
|
||
#### Busca por Nome:
|
||
1. Digitar "L50" no campo de busca
|
||
2. Verificar que apenas L50x50 aparecem
|
||
|
||
#### Limpar Filtros:
|
||
1. Clicar em "🔄 Limpar Filtros"
|
||
2. Verificar que todas as 39 cantoneiras voltam
|
||
|
||
---
|
||
|
||
### 5️⃣ Testar Painel Administrativo
|
||
|
||
#### Abrir Painel:
|
||
No console do navegador (F12):
|
||
```javascript
|
||
abrirPainelDados()
|
||
```
|
||
|
||
#### Verificar:
|
||
- ✅ Modal abre com informações do sistema
|
||
- ✅ Versão: 1.0.0
|
||
- ✅ Cache: ✅ Ativo
|
||
- ✅ Última Atualização: data/hora atual
|
||
- ✅ Tabela com 10 tipos de perfis
|
||
- ✅ Status de cada tipo (Cached/Vazio)
|
||
- ✅ Contador de itens por tipo
|
||
|
||
---
|
||
|
||
### 6️⃣ Testar Ações do Painel
|
||
|
||
#### Atualizar Todos os Dados:
|
||
1. Clicar em "🔄 Atualizar Todos os Dados"
|
||
2. Confirmar ação
|
||
3. Verificar log de atividades
|
||
4. Verificar mensagens de sucesso
|
||
|
||
#### Limpar Cache:
|
||
1. Clicar em "🗑️ Limpar Cache"
|
||
2. Confirmar ação
|
||
3. Verificar que cache foi limpo
|
||
4. Recarregar página
|
||
5. Verificar que dados são recarregados automaticamente
|
||
|
||
#### Verificar Integridade:
|
||
1. Clicar em "🔍 Verificar Integridade"
|
||
2. Verificar resultado no log
|
||
3. Deve mostrar "✅ Todos os dados estão íntegros!"
|
||
|
||
#### Exportar Dados:
|
||
1. Clicar em "📤 Exportar Dados"
|
||
2. Verificar que arquivo JSON é baixado
|
||
3. Abrir arquivo e verificar conteúdo
|
||
|
||
---
|
||
|
||
### 7️⃣ Testar Atualização Individual
|
||
|
||
#### No Painel Admin:
|
||
1. Localizar linha "Cantoneiras"
|
||
2. Clicar em "🔄 Atualizar"
|
||
3. Confirmar ação
|
||
4. Verificar mensagem de sucesso
|
||
5. Verificar que contador foi atualizado
|
||
|
||
#### Limpar Tipo Específico:
|
||
1. Localizar linha "Cantoneiras"
|
||
2. Clicar em "🗑️ Limpar"
|
||
3. Confirmar ação
|
||
4. Verificar que status mudou para "❌ Vazio"
|
||
5. Recarregar catálogo
|
||
6. Verificar que dados são recarregados automaticamente
|
||
|
||
---
|
||
|
||
### 8️⃣ Testar Cache Persistente
|
||
|
||
#### Teste de Persistência:
|
||
1. Carregar catálogo de cantoneiras
|
||
2. Verificar que dados aparecem
|
||
3. **Fechar navegador completamente**
|
||
4. Abrir navegador novamente
|
||
5. Acessar catálogo de cantoneiras
|
||
6. Verificar que dados carregam **instantaneamente** (do cache)
|
||
|
||
#### No Console:
|
||
Deve aparecer:
|
||
```
|
||
✅ Cache válido encontrado. Dados prontos para uso.
|
||
📂 Cache carregado: cantoneiras (39 itens)
|
||
```
|
||
|
||
---
|
||
|
||
### 9️⃣ Testar Fallback (Sistema Legado)
|
||
|
||
#### Simular Falha do Data Manager:
|
||
1. Abrir console (F12)
|
||
2. Executar: `window.dataManager = null`
|
||
3. Recarregar catálogo de cantoneiras
|
||
4. Verificar que sistema legado é ativado
|
||
5. Dados devem carregar normalmente do CSV
|
||
|
||
#### No Console:
|
||
Deve aparecer:
|
||
```
|
||
❌ Data Manager não disponível. Carregando método legado...
|
||
```
|
||
|
||
---
|
||
|
||
### 🔟 Testar Performance
|
||
|
||
#### Primeira Carga (Sem Cache):
|
||
1. Limpar cache: `localStorage.clear()`
|
||
2. Recarregar página
|
||
3. Medir tempo de carregamento
|
||
4. **Esperado**: ~500ms
|
||
|
||
#### Segunda Carga (Com Cache):
|
||
1. Recarregar página
|
||
2. Medir tempo de carregamento
|
||
3. **Esperado**: ~50ms (10x mais rápido!)
|
||
|
||
#### Filtros:
|
||
1. Aplicar filtro
|
||
2. Medir tempo de resposta
|
||
3. **Esperado**: ~10ms (instantâneo)
|
||
|
||
---
|
||
|
||
## ✅ Checklist de Testes
|
||
|
||
### Funcionalidades Básicas
|
||
- [ ] Data Manager inicializa automaticamente
|
||
- [ ] Cache é criado no localStorage
|
||
- [ ] Cantoneiras carregam corretamente
|
||
- [ ] Tabela exibe 39 itens
|
||
- [ ] Dados estão corretos
|
||
|
||
### Filtros
|
||
- [ ] Filtro por tamanho funciona
|
||
- [ ] Filtro por peso funciona
|
||
- [ ] Busca por nome funciona
|
||
- [ ] Limpar filtros funciona
|
||
- [ ] Contador atualiza corretamente
|
||
|
||
### Painel Admin
|
||
- [ ] Painel abre corretamente
|
||
- [ ] Status do sistema correto
|
||
- [ ] Tabela de tipos completa
|
||
- [ ] Atualizar todos funciona
|
||
- [ ] Limpar cache funciona
|
||
- [ ] Verificar integridade funciona
|
||
- [ ] Exportar dados funciona
|
||
|
||
### Ações Individuais
|
||
- [ ] Atualizar tipo específico funciona
|
||
- [ ] Limpar tipo específico funciona
|
||
- [ ] Recarregamento automático funciona
|
||
|
||
### Cache e Performance
|
||
- [ ] Cache persiste após fechar navegador
|
||
- [ ] Segunda carga é mais rápida
|
||
- [ ] Filtros são instantâneos
|
||
- [ ] Sem erros no console
|
||
|
||
### Fallback
|
||
- [ ] Sistema legado funciona se Data Manager falhar
|
||
- [ ] Dados carregam do CSV diretamente
|
||
|
||
---
|
||
|
||
## 🐛 Problemas Comuns
|
||
|
||
### Problema: "cantoneiras-tbody não encontrado"
|
||
**Causa**: Elemento HTML não existe ou timing incorreto
|
||
**Solução**: Verificar se está na aba correta do catálogo
|
||
|
||
### Problema: "HTTP 404" ao carregar CSV
|
||
**Causa**: Arquivo CSV não existe
|
||
**Solução**: Verificar se arquivo está em `BD/perfis/cantoneiras_brasil_completo.csv`
|
||
|
||
### Problema: Cache não persiste
|
||
**Causa**: localStorage desabilitado ou cheio
|
||
**Solução**: Verificar configurações do navegador
|
||
|
||
### Problema: Dados não aparecem
|
||
**Causa**: Erro no CSV ou JavaScript
|
||
**Solução**:
|
||
1. Abrir console (F12)
|
||
2. Verificar erros
|
||
3. Executar `abrirPainelDados()`
|
||
4. Clicar em "Verificar Integridade"
|
||
|
||
---
|
||
|
||
## 📊 Comandos Úteis no Console
|
||
|
||
```javascript
|
||
// Ver dados em cache
|
||
window.dataManager.getCacheStats()
|
||
|
||
// Carregar dados manualmente
|
||
await window.dataManager.getData('cantoneiras')
|
||
|
||
// Filtrar dados
|
||
window.dataManager.filterData(window.cantoneirasData, { tipo: 'Pequena' })
|
||
|
||
// Buscar dados
|
||
window.dataManager.searchData(window.cantoneirasData, 'L50', ['nome'])
|
||
|
||
// Limpar cache
|
||
window.dataManager.clearCache()
|
||
|
||
// Atualizar tudo
|
||
await window.dataManager.updateAllData()
|
||
|
||
// Ver metadata
|
||
window.dataManager.getMetadata()
|
||
|
||
// Abrir painel admin
|
||
abrirPainelDados()
|
||
|
||
// Atualizar cantoneiras
|
||
await atualizarDadosCantoneiras()
|
||
```
|
||
|
||
---
|
||
|
||
## 🎯 Critérios de Sucesso
|
||
|
||
### ✅ Sistema Funcionando Perfeitamente Se:
|
||
1. Data Manager inicializa sem erros
|
||
2. Cache é criado automaticamente
|
||
3. Cantoneiras carregam em < 1 segundo
|
||
4. Filtros respondem instantaneamente
|
||
5. Painel admin abre e funciona
|
||
6. Cache persiste entre sessões
|
||
7. Nenhum erro no console
|
||
8. Performance é notavelmente melhor
|
||
|
||
### ⚠️ Sistema com Problemas Se:
|
||
1. Erros no console
|
||
2. Dados não aparecem
|
||
3. Filtros não funcionam
|
||
4. Cache não persiste
|
||
5. Performance ruim
|
||
6. Painel admin não abre
|
||
|
||
---
|
||
|
||
## 📝 Relatório de Teste
|
||
|
||
Após testar, preencha:
|
||
|
||
```
|
||
Data do Teste: ___/___/2025
|
||
Navegador: _______________
|
||
Versão: _______________
|
||
|
||
Funcionalidades Testadas:
|
||
[ ] Carregamento automático
|
||
[ ] Catálogo de cantoneiras
|
||
[ ] Filtros
|
||
[ ] Painel administrativo
|
||
[ ] Cache persistente
|
||
[ ] Performance
|
||
|
||
Problemas Encontrados:
|
||
1. ___________________________
|
||
2. ___________________________
|
||
3. ___________________________
|
||
|
||
Observações:
|
||
_______________________________
|
||
_______________________________
|
||
_______________________________
|
||
|
||
Status Final: [ ] ✅ Aprovado [ ] ⚠️ Com Ressalvas [ ] ❌ Reprovado
|
||
```
|
||
|
||
---
|
||
|
||
## 🚀 Próximos Passos Após Testes
|
||
|
||
Se tudo funcionar:
|
||
1. ✅ Expandir para outros tipos de perfis
|
||
2. ✅ Adicionar mais funcionalidades ao painel admin
|
||
3. ✅ Implementar exportação para Excel
|
||
4. ✅ Adicionar gráficos e estatísticas
|
||
5. ✅ Criar documentação para usuários finais
|
||
|
||
---
|
||
|
||
**Boa sorte com os testes! 🎉**
|