Files
SteelBase/docs-historicos/TESTE-SISTEMA-DATABASE.md

362 lines
8.2 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🧪 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! 🎉**