Skip to main content

📌 Suíte de Testes

  • Nome da funcionalidade testada: Estoque Unificado — Painel, Lançamentos e Transferências
  • Módulo/sistema identificado: OmniDom Backoffice — módulo Estoque Unificado
  • Pré-condições gerais:
    • Usuário autenticado no sistema com perfil VENDOR ou equivalente com permissão ao módulo Estoque Unificado
    • Ao menos 1 produto cadastrado (ex: SKU 18856 — AGUA DESTILADA 4X5L)
    • Ao menos 2 depósitos ativos cadastrados (ex: Mercado Livre, Galpão A, Trainmec)
    • Sistema com status “Online & Sync” confirmado no rodapé da barra lateral
    • Módulo Estoque Unificado acessível pelo menu lateral

🧪 Casos de Teste


Grupo 1: Painel de Métricas e Listagem


CT01: Exibição correta dos cards de métricas ao carregar o módulo
  • Tipo: Positivo
  • Pré-condição: Usuário autenticado. Módulo Estoque Unificado ainda não acessado nesta sessão.
  • Dados de Entrada: Nenhum (apenas navegação)
  • Passos:
    1. Clicar em “Estoque Unificado” na barra lateral esquerda
    2. Aguardar o carregamento completo da tela
    3. Observar os 4 cards no topo da tela
  • Resultado Esperado: Sistema exibe os 4 cards preenchidos: Produtos (total de SKUs cadastrados), Disponível (total de unidades disponíveis), Estoque Baixo (SKUs com saldo abaixo do mínimo) e Sem Estoque (SKUs zerados). Todos os valores numéricos devem refletir o inventário real.
  • Critério de Aprovação: Os 4 cards aparecem com valores numéricos coerentes. O valor de “Disponível” deve ser igual a Físico total − Reservado total de todos os produtos.
  • Origem: Observado nas telas

CT02: Listagem de produtos exibe colunas corretas
  • Tipo: Positivo
  • Pré-condição: Módulo Estoque Unificado carregado. Filtro “Todos” selecionado.
  • Dados de Entrada: Nenhum
  • Passos:
    1. Acessar o módulo Estoque Unificado
    2. Observar a tabela de inventário abaixo dos cards
  • Resultado Esperado: A tabela deve exibir as colunas: PRODUTO / SKU, FÍSICO, DISPONÍVEL, RESERVADO, DEPÓSITOS (com barra de progresso e contador de depósitos), STATUS (badge colorido) e AÇÕES (botões “Transferir” e “Ajustar Saldo”).
  • Critério de Aprovação: Todas as 7 colunas estão visíveis e preenchidas para cada produto listado.
  • Origem: Observado nas telas

CT03: Filtro por depósito específico atualiza tabela e métricas
  • Tipo: Positivo
  • Pré-condição: Módulo Estoque Unificado carregado. Filtro padrão “Todos” ativo.
  • Dados de Entrada: Depósito a filtrar: Depósito Principal
  • Passos:
    1. Clicar na aba “Depósito Principal” na barra de filtros de depósito
    2. Aguardar o indicador “Carregando inventário…” desaparecer
    3. Observar a tabela e os cards de métricas
  • Resultado Esperado: A tabela exibe apenas os produtos com saldo no Depósito Principal. O card “Disponível” atualiza para refletir o total de unidades nesse depósito (ex: de 840 para 730). O spinner “Carregando inventário…” deve aparecer brevemente durante a transição.
  • Critério de Aprovação: Produtos de outros depósitos não aparecem na listagem. O valor do card “Disponível” é coerente com os dados filtrados.
  • Origem: Observado nas telas

CT04: Filtro por status “Esgotado” não retorna produtos com saldo
  • Tipo: Negativo
  • Pré-condição: Módulo Estoque Unificado carregado. Todos os produtos do teste possuem saldo > 0.
  • Dados de Entrada: Status a filtrar: Esgotado
  • Passos:
    1. Clicar na aba “Esgotado” na barra de filtros de status
    2. Aguardar o carregamento
    3. Observar o resultado da tabela
  • Resultado Esperado: A tabela exibe mensagem de lista vazia ou “Nenhum produto encontrado” (estado vazio), pois não há produtos sem estoque no cenário de teste.
  • Critério de Aprovação: Nenhum produto com saldo físico > 0 aparece na listagem filtrada por “Esgotado”.
  • Origem: Inferido (filtro visível nas telas; comportamento de lista vazia não demonstrado no vídeo)

CT05: Barra de busca filtra produto por SKU
  • Tipo: Positivo
  • Pré-condição: Módulo Estoque Unificado carregado com tabela visível.
  • Dados de Entrada: Termo de busca: 18856
  • Passos:
    1. Clicar no campo “Buscar por nome ou SKU…”
    2. Digitar 18856
    3. Aguardar o filtro ser aplicado
  • Resultado Esperado: A tabela exibe apenas o produto com SKU 18856 — AGUA DESTILADA 4X5L.
  • Critério de Aprovação: Apenas 1 produto aparece, correspondendo ao SKU digitado. Os demais SKUs desaparecem da listagem.
  • Origem: Inferido (campo de busca visível nas telas; comportamento dinâmico não demonstrado no vídeo)

CT06: Busca por termo inexistente retorna lista vazia
  • Tipo: Negativo
  • Pré-condição: Módulo Estoque Unificado carregado.
  • Dados de Entrada: Termo de busca: XXXXXXPRODUTOINEXISTENTE
  • Passos:
    1. Clicar no campo “Buscar por nome ou SKU…”
    2. Digitar XXXXXXPRODUTOINEXISTENTE
    3. Aguardar o resultado
  • Resultado Esperado: A tabela exibe estado vazio — nenhum produto encontrado. Não deve exibir erro ou travamento.
  • Critério de Aprovação: Tabela vazia sem crash. Sistema permanece responsivo.
  • Origem: Inferido (A validar)

Grupo 2: Lançamento de Estoque


CT07: Abertura do modal de Lançamento de Estoque via botão ”+ Novo Ajuste”
  • Tipo: Positivo
  • Pré-condição: Módulo Estoque Unificado carregado.
  • Dados de Entrada: Nenhum
  • Passos:
    1. Localizar o botão ”+ Novo Ajuste” no canto superior direito da tela
    2. Clicar no botão
  • Resultado Esperado: Modal “Lançamento de Estoque” é aberto com 4 etapas numeradas: (1) Tipo de Operação, (2) Produto e Depósito, (3) Valores, (4) Motivo. O campo Produto deve estar vazio e o depósito sem seleção.
  • Critério de Aprovação: Modal aparece completamente visível com as 4 seções. Campos Produto e Depósito começam em branco.
  • Origem: Observado nas telas

CT08: Lançamento tipo “Entrada de Compra” com dados válidos
  • Tipo: Positivo
  • Pré-condição: Modal de Lançamento de Estoque aberto. Produto AGUA DESTILADA 4X5L (SKU 18856) existente com saldo inicial de 5 unidades no depósito Mercado Livre.
  • Dados de Entrada:
    • Tipo de Operação: Entrada de Compra
    • Produto: 18856 – AGUA DESTILADA 4X5L
    • Depósito: Mercado Livre
    • Quantidade: 50
    • Custo Unitário: R$ 12,12
    • Motivo: Ajuste Manual
  • Passos:
    1. Selecionar “Entrada de Compra” no Passo 1
    2. No campo Produto, digitar 18856 e selecionar AGUA DESTILADA 4X5L
    3. No campo Depósito, selecionar “Mercado Livre”
    4. No campo Quantidade, digitar 50
    5. No campo Custo Unitário, digitar 12,12
    6. No campo Motivo, selecionar “Ajuste Manual”
    7. Clicar em “Salvar”
  • Resultado Esperado: Modal fecha. Notificação “Lançamento realizado com sucesso!” aparece. Na tabela, a coluna Físico e Disponível do produto AGUA DESTILADA 4X5L no depósito Mercado Livre atualiza de 5 para 55. O card “Disponível” no painel incrementa em 50.
  • Critério de Aprovação: Saldo do produto = 55. Card DISPONÍVEL reflete novo total. Toast de sucesso exibido.
  • Origem: Observado nas telas

CT09: Lançamento tipo “Acréscimo Manual” sem alterar custo
  • Tipo: Positivo
  • Pré-condição: Modal de Lançamento de Estoque aberto. Produto com custo médio já registrado.
  • Dados de Entrada:
    • Tipo de Operação: Acréscimo Manual (+)
    • Produto: 18856 – AGUA DESTILADA 4X5L
    • Depósito: Mercado Livre
    • Quantidade: 10
    • Custo Unitário: 0,00 (ou campo desabilitado — a validar)
    • Motivo: Ajuste Manual
  • Passos:
    1. Selecionar “Acréscimo Manual (+)” no Passo 1
    2. Preencher produto, depósito, quantidade (10) e motivo
    3. Verificar se o campo Custo Unitário está desabilitado ou é ignorado
    4. Clicar em “Salvar”
  • Resultado Esperado: Saldo do produto aumenta em 10 unidades. O custo médio unitário do produto não é alterado.
  • Critério de Aprovação: Saldo anterior + 10. Custo médio permanece inalterado após o lançamento.
  • Origem: Inferido (descrição da opção visível nas telas; comportamento completo a validar)

CT10: Lançamento tipo “Baixa Manual” reduz saldo
  • Tipo: Positivo
  • Pré-condição: Produto com saldo mínimo de 5 unidades no depósito selecionado.
  • Dados de Entrada:
    • Tipo de Operação: Baixa Manual (-)
    • Produto: 18856 – AGUA DESTILADA 4X5L
    • Depósito: Mercado Livre
    • Quantidade: 3
    • Motivo: Ajuste Manual
  • Passos:
    1. Selecionar “Baixa Manual (-)” no Passo 1
    2. Preencher produto, depósito e quantidade (3)
    3. Selecionar motivo
    4. Clicar em “Salvar”
  • Resultado Esperado: Saldo físico do produto reduz em 3 unidades no depósito selecionado. Notificação de sucesso exibida.
  • Critério de Aprovação: Saldo anterior − 3. Card DISPONÍVEL reflete nova quantidade.
  • Origem: Inferido (opção visível nas telas; comportamento a validar)

CT11: Tentativa de salvar lançamento sem selecionar Produto
  • Tipo: Negativo
  • Pré-condição: Modal de Lançamento de Estoque aberto. Tipo de Operação selecionado. Campo Produto vazio.
  • Dados de Entrada:
    • Tipo de Operação: Entrada de Compra
    • Produto: (vazio)
    • Depósito: Mercado Livre
    • Quantidade: 10
    • Motivo: Ajuste Manual
  • Passos:
    1. Selecionar “Entrada de Compra”
    2. Deixar o campo Produto vazio
    3. Preencher os demais campos
    4. Clicar em “Salvar”
  • Resultado Esperado: O sistema bloqueia o envio e destaca o campo Produto como obrigatório (ex: borda vermelha, mensagem de validação). O modal permanece aberto.
  • Critério de Aprovação: Nenhum lançamento é criado. Mensagem de campo obrigatório exibida para Produto.
  • Origem: A validar

CT12: Tentativa de salvar lançamento sem selecionar Depósito
  • Tipo: Negativo
  • Pré-condição: Modal de Lançamento de Estoque aberto. Produto selecionado. Campo Depósito sem seleção.
  • Dados de Entrada:
    • Produto: 18856 – AGUA DESTILADA 4X5L
    • Depósito: (não selecionado)
    • Quantidade: 10
    • Motivo: Ajuste Manual
  • Passos:
    1. Selecionar “Entrada de Compra”
    2. Selecionar o produto 18856
    3. Não selecionar depósito
    4. Preencher quantidade e motivo
    5. Clicar em “Salvar”
  • Resultado Esperado: Sistema bloqueia o envio e indica o campo Depósito como obrigatório.
  • Critério de Aprovação: Lançamento não criado. Mensagem de validação no campo Depósito.
  • Origem: A validar

CT13: Lançamento com quantidade zero ou negativa
  • Tipo: Borda
  • Pré-condição: Modal de Lançamento de Estoque aberto com todos os campos válidos.
  • Dados de Entrada:
    • Quantidade: 0 (e depois repetir com -5)
  • Passos:
    1. Preencher todos os campos corretamente
    2. Alterar o campo Quantidade para 0
    3. Clicar em “Salvar”
    4. Repetir com quantidade -5
  • Resultado Esperado: O sistema bloqueia o envio para quantidade 0 e rejeita valores negativos no campo. Mensagem de validação deve indicar que a quantidade mínima é 1.
  • Critério de Aprovação: Lançamento não criado para quantidade ≤ 0. Mensagem de erro exibida.
  • Origem: A validar (os controles +/− do campo sugerem valor mínimo de 0 — a confirmar o comportamento ao tentar salvar)

CT14: Custo unitário com valor zerado em “Entrada de Compra”
  • Tipo: Borda
  • Pré-condição: Modal de Lançamento de Estoque aberto. Tipo “Entrada de Compra” selecionado.
  • Dados de Entrada:
    • Tipo de Operação: Entrada de Compra
    • Produto: 18856 – AGUA DESTILADA 4X5L
    • Depósito: Mercado Livre
    • Quantidade: 10
    • Custo Unitário: 0,00
    • Motivo: Ajuste Manual
  • Passos:
    1. Preencher todos os campos com os dados acima
    2. Manter Custo Unitário como 0,00
    3. Clicar em “Salvar”
  • Resultado Esperado: Verificar se o sistema aceita custo zero (comportamento válido em casos de bonificação) ou exibe alerta de confirmação. O sistema não deve rejeitar silenciosamente a operação.
  • Critério de Aprovação: Sistema salva com aviso ou bloqueia com mensagem clara. Nenhum comportamento indefinido.
  • Origem: A validar

Grupo 3: Transferência entre Depósitos


CT15: Transferência de estoque entre dois depósitos com dados válidos
  • Tipo: Positivo
  • Pré-condição: Produto AGUA DESTILADA 4X5L (SKU 18856) com 55 unidades no depósito Mercado Livre. Depósito Trainmec existente e ativo.
  • Dados de Entrada:
    • Produto: AGUA DESTILADA 4X5L (pré-selecionado)
    • Depósito de Origem: Mercado Livre
    • Depósito de Destino: Trainmec
    • Quantidade: 8
    • Observação: Transferencia
  • Passos:
    1. Na linha do produto AGUA DESTILADA 4X5L na tabela, clicar em “Transferir”
    2. Confirmar que o produto está pré-selecionado no modal
    3. Selecionar “Mercado Livre” como depósito de origem
    4. Selecionar “Trainmec” como depósito de destino
    5. Informar quantidade 8
    6. Digitar observação Transferencia
    7. Clicar em “Confirmar Transferência”
  • Resultado Esperado: Modal fecha. Notificação “Transferência realizada com sucesso!” aparece. Saldo do depósito Mercado Livre reduz de 55 para 47. Saldo do depósito Trainmec aumenta em 8. A coluna “DEPÓSITOS” do produto atualiza de “1 DEPÓSITO” para “2 DEPÓSITOS”. Total físico global permanece 55.
  • Critério de Aprovação: Saldo Mercado Livre = 47. Saldo Trainmec = 8. Total físico = 55. Toast de sucesso exibido. Coluna DEPÓSITOS = “2 DEPÓSITOS”.
  • Origem: Observado nas telas

CT16: Verificar que transferência não altera o total físico global
  • Tipo: Positivo
  • Pré-condição: Produto com saldo total de 55 unidades distribuídas em 2 depósitos após CT15.
  • Dados de Entrada: Nenhuma nova entrada — verificação de dados
  • Passos:
    1. Após a transferência de CT15, verificar o card “Disponível” no painel
    2. Filtrar pelo depósito Mercado Livre e anotar o saldo
    3. Filtrar pelo depósito Trainmec e anotar o saldo
    4. Somar os dois saldos
  • Resultado Esperado: A soma dos saldos nos dois depósitos deve ser igual ao total físico anterior (55). O card “Disponível” não deve ter alterado o valor total.
  • Critério de Aprovação: Saldo Mercado Livre + Saldo Trainmec = 55. Card DISPONÍVEL global = mesmo valor de antes da transferência.
  • Origem: Observado nas telas (princípio da conservação de saldo)

CT17: Tentativa de transferência com quantidade maior que o saldo disponível
  • Tipo: Negativo
  • Pré-condição: Produto AGUA DESTILADA 4X5L com 55 unidades no depósito Mercado Livre.
  • Dados de Entrada:
    • Depósito de Origem: Mercado Livre
    • Depósito de Destino: Galpão A
    • Quantidade: 999
  • Passos:
    1. Clicar em “Transferir” na linha do produto
    2. Selecionar Mercado Livre como origem e Galpão A como destino
    3. Digitar 999 no campo Quantidade
    4. Clicar em “Confirmar Transferência”
  • Resultado Esperado: Sistema bloqueia a transferência e exibe mensagem de erro indicando saldo insuficiente (ex: “Quantidade indisponível no depósito de origem”).
  • Critério de Aprovação: Nenhuma movimentação criada. Saldo permanece inalterado. Mensagem de erro clara e específica exibida.
  • Origem: A validar

CT18: Tentativa de transferência com mesmo depósito de origem e destino
  • Tipo: Negativo
  • Pré-condição: Modal de Transferência aberto.
  • Dados de Entrada:
    • Depósito de Origem: Mercado Livre
    • Depósito de Destino: Mercado Livre
    • Quantidade: 5
  • Passos:
    1. Abrir modal de Transferência
    2. Selecionar “Mercado Livre” tanto para origem quanto para destino
    3. Informar quantidade 5
    4. Clicar em “Confirmar Transferência”
  • Resultado Esperado: Sistema bloqueia a operação e exibe mensagem informando que origem e destino não podem ser iguais.
  • Critério de Aprovação: Transferência não criada. Mensagem de validação exibida.
  • Origem: A validar

CT19: Transferência com quantidade mínima (1 unidade)
  • Tipo: Borda
  • Pré-condição: Produto com ao menos 1 unidade disponível no depósito de origem.
  • Dados de Entrada:
    • Depósito de Origem: Mercado Livre
    • Depósito de Destino: Galpão A
    • Quantidade: 1
  • Passos:
    1. Abrir modal de Transferência para o produto
    2. Selecionar origem e destino distintos
    3. Digitar 1 no campo Quantidade
    4. Clicar em “Confirmar Transferência”
  • Resultado Esperado: Transferência realizada com sucesso para 1 unidade. Toast de sucesso exibido. Saldos atualizados corretamente.
  • Critério de Aprovação: Saldo de origem reduz em 1. Saldo de destino aumenta em 1. Toast de sucesso visível.
  • Origem: A validar (valor de borda para o campo quantidade)

CT20: Transferência com quantidade zero
  • Tipo: Borda
  • Pré-condição: Modal de Transferência aberto.
  • Dados de Entrada:
    • Quantidade: 0
  • Passos:
    1. Abrir modal de Transferência
    2. Preencher origem e destino válidos
    3. Digitar 0 no campo Quantidade
    4. Clicar em “Confirmar Transferência”
  • Resultado Esperado: Sistema bloqueia a operação com mensagem indicando que a quantidade mínima para transferência é 1.
  • Critério de Aprovação: Nenhuma transferência criada. Mensagem de validação exibida.
  • Origem: A validar

Grupo 4: Feedback Visual e UX


CT21: Toast de sucesso é exibido e desaparece automaticamente
  • Tipo: Positivo
  • Pré-condição: Qualquer operação de lançamento ou transferência realizada com sucesso.
  • Dados de Entrada: Nenhum (verificação de comportamento UX)
  • Passos:
    1. Realizar um lançamento ou transferência válido
    2. Observar o canto superior da tela após fechar o modal
    3. Aguardar 5–10 segundos sem interação
  • Resultado Esperado: Toast com mensagem de sucesso aparece imediatamente após o modal fechar e some automaticamente após alguns segundos (sem necessidade de o usuário fechar manualmente).
  • Critério de Aprovação: Toast visível por 3–8 segundos e depois desaparece. Tela principal permanece funcional.
  • Origem: Observado nas telas (comportamento de desaparecimento inferido)

CT22: Indicador “Online & Sync” visível durante operações
  • Tipo: Positivo
  • Pré-condição: Usuário autenticado e conectado à internet.
  • Dados de Entrada: Nenhum
  • Passos:
    1. Acessar o módulo Estoque Unificado
    2. Observar o rodapé da barra lateral esquerda
  • Resultado Esperado: O indicador “Online & Sync” está visível com ícone verde indicando conexão ativa e sincronização em tempo real.
  • Critério de Aprovação: Texto “Online & Sync” visível no rodapé da barra lateral com indicador de status positivo (verde).
  • Origem: Observado nas telas

CT23: Tabela atualiza em tempo real após operação sem recarregar a página
  • Tipo: Positivo
  • Pré-condição: Módulo Estoque Unificado carregado. Saldo do produto AGUA DESTILADA 4X5L conhecido antes da operação.
  • Dados de Entrada: Qualquer lançamento ou transferência válida
  • Passos:
    1. Anotar o saldo atual do produto na tabela
    2. Realizar um lançamento de +10 unidades
    3. Observar a tabela após o modal fechar (sem pressionar F5 ou recarregar)
  • Resultado Esperado: A tabela atualiza automaticamente o saldo do produto sem recarregar a página. O novo valor reflete a operação realizada.
  • Critério de Aprovação: Saldo na coluna Físico = saldo anterior + 10. URL permanece a mesma sem reload completo.
  • Origem: Observado nas telas

📋 Regras de Negócio Testadas

  • RN01: Disponível = Físico − Reservado
    • Casos de teste relacionados: CT01, CT08, CT16
  • RN02: “Entrada de Compra” atualiza o custo médio unitário; “Acréscimo Manual” não
    • Casos de teste relacionados: CT08, CT09, CT14
  • RN03: Todo lançamento é vinculado a um depósito específico (não ao produto globalmente)
    • Casos de teste relacionados: CT08, CT11, CT12
  • RN04: Transferência não altera o total físico global do produto
    • Casos de teste relacionados: CT15, CT16
  • RN05: Produto pode ter saldo em múltiplos depósitos; coluna DEPÓSITOS indica o contador
    • Casos de teste relacionados: CT15, CT16
  • RN06: Campos obrigatórios no lançamento: Tipo, Produto, Depósito, Quantidade (≥1), Motivo
    • Casos de teste relacionados: CT11, CT12, CT13
  • RN07: Feedback visual (toast) exibido após toda operação concluída com sucesso
    • Casos de teste relacionados: CT08, CT15, CT21
  • RN08: Sistema sincronizado em tempo real — tabela atualiza sem recarregar a página
    • Casos de teste relacionados: CT23, CT22

⚠️ Cenários de Exceção

CenárioCampo/AçãoComportamento EsperadoStatus
Produto não preenchido no lançamentoCampo ProdutoBloquear envio + mensagem de campo obrigatórioA validar
Depósito não selecionado no lançamentoCampo DepósitoBloquear envio + mensagem de campo obrigatórioA validar
Quantidade = 0 no lançamentoCampo QuantidadeBloquear envio + mensagem de valor mínimoA validar
Quantidade negativa no lançamentoCampo QuantidadeCampo deve rejeitar entrada negativaA validar
Custo = R$ 0,00 em Entrada de CompraCampo Custo UnitárioAceitar com alerta ou bloquear com mensagemA validar
Quantidade de transferência > saldo disponívelCampo QuantidadeBloquear + “Saldo insuficiente no depósito de origem”A validar
Origem = Destino na transferênciaSeletor DepósitoBloquear + “Origem e destino não podem ser iguais”A validar
Quantidade = 0 na transferênciaCampo QuantidadeBloquear + mensagem de valor mínimo (mín. 1)A validar
Usuário sem permissão ao móduloMódulo Estoque UnificadoItem de menu oculto ou tela com mensagem de acesso negadoA validar
Sistema offline durante operaçãoQualquer operaçãoExibir mensagem de erro de conectividade; impedir perda de dadosA validar

📊 Matriz de Cobertura

FuncionalidadeCT PositivoCT NegativoCT Borda
Painel de métricasCT01
Listagem de inventárioCT02, CT03CT04
Busca por produto/SKUCT05CT06
Lançamento — Entrada de CompraCT07, CT08CT11, CT12CT13, CT14
Lançamento — Acréscimo ManualCT09
Lançamento — Baixa ManualCT10
Transferência entre depósitosCT15, CT16CT17, CT18CT19, CT20
Feedback visual / UXCT21, CT22, CT23
Total de casos de teste: 23 CTs
Positivos: 14 | Negativos: 6 | Borda: 6
Observados nas telas: 10 | Inferidos: 5 | A validar: 8