> ## Documentation Index
> Fetch the complete documentation index at: https://docs.domsoftware.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Produtos (QA)

> Testes de Produtos

# OmniDom Produtos — QA Test Documentation

### 📌 Suíte de Testes

* **Nome da funcionalidade testada:** Cadastro, Edição, Filtros e Fluxo Completo de Produtos (Simples, Variável e Kits).
* **Módulo/sistema identificado:** Módulo de Catálogo & Fiscal / OmniDom BackOffice.
* **Pré-condições gerais:** Tabelas fiscais de NCM já validadas e banco de dados populado com pelo menos 2 produtos simples para permitir o teste de Kits.

***

### 🧪 Casos de Teste

**CT1: Inserção Feliz de Produto do Tipo Simples**

* **Tipo:** Positivo
* **Pré-condição:** Aba de Catálogo > Produtos.
* **Dados de Entrada:** Tipo: "Simples", Nome: "Caneca Omni", SKU: "CNC-001", Preço Venda: "R\$ 45,00", NCM: "6912.00.00", Peso: "0.400 kg".
* **Passos:**
  1. Clicar em "+ Novo Produto".
  2. Preencher a aba Geral (Nome/SKU/Tipo).
  3. Preencher a aba Logística (Peso/Dimensoões).
  4. Preencher a aba Fiscal/Custo.
  5. Salvar o registro do catálogo.
* **Resultado Esperado:** Transição harmoniosa entre as abas, nenhuma *exception* em console e disparo da notificação "Produto Criado com Sucesso" persistindo o "CNC-001" na grid root.
* **Critério de Aprovação:** Integridade de relacionamento visível na tela pós-cadastro.
* **Origem:** Observado nas telas.

**CT2: Validação da Trava de Multiplicidade da Chave SKU**

* **Tipo:** Negativo (Tratamento de Exceção)
* **Pré-condição:** Estar cadastrando Produto que possua um SKU idêntico a um já ativo.
* **Dados de Entrada:** SKU: "CNC-001" (Já existente na DB).
* **Passos:**
  1. No form raiz, inserir os dados gerais.
  2. Fornecer SKU preexistente "CNC-001".
  3. Clicar em Gravar.
* **Resultado Esperado:** O *save* deve falhar bloqueando o *commit*. Um alerta em vermelho informará "Este SKU já está em uso base".
* **Critério de Aprovação:** Segurança estrita de colisão de strings SKUs do BD.
* **Origem:** Conforme regra de negócio mapeada "RN01: Unicidade do Identificador".

**CT3: Cálculo Responsivo de Estoque Atrelado (Composição de Kits)**

* **Tipo:** Borda / E2E
* **Pré-condição:** Criar um "Kit Especial".
* **Dados de Entrada:** Produto Componente A (Estoque 5 unidades) | Produto Componente B (Estoque 3 unidades).
* **Passos:**
  1. Na aba de tipo, definir como "Kit".
  2. Acionar a busca de componentes na UI respectiva amarrando "Produto A" 1x e "Produto B" 1x.
  3. Salvar Kit e visualizar o saldo em tela do Kit raiz.
* **Resultado Esperado:** A coluna "Estoque" do Kit deve exibir instantaneamente exatamente 3 unidades vendáveis (Limitador imposto pelo componente de menor relevância numérica na prateleira real).
* **Critério de Aprovação:** O motor (Engine Front-End E Back) efetua o Min() dos itens.
* **Origem:** Inferido da Regra "RN02" exposta no comportamento.

**CT4: Multiplicação Combinatória de Grades**

* **Tipo:** Positivo / Funcional
* **Pré-condição:** O Tipo de Produto sendo "Variação" na Aba 1.
* **Dados de Entrada:** Puxar os Atributos: \[Cores: "Preto, Branco", Material: "Couro, Sintético"].
* **Passos:**
  1. Incluir propriedades globais nas flags da UI (Tags).
  2. Clicar para "Adicionar Grade" ou Gerar SKUs.
* **Resultado Esperado:** 4 Filhos natos devem aparecer na tabela subjacente dentro do form, pedindo um complemento de Preço ou código de barras isolado para cada variação.
* **Critério de Aprovação:** Geração cartesiana correta `2x2 = 4 rows`.
* **Origem:** Observado nas telas.

***

### 📋 Regras de Negócio Testadas

* **RN1: Proteção de Chave Única (SKU Unique)** - Validado CT2.
* **RN2: Estoque Relacional para Kits** - Validado CT3.
* **RN3: Grade Combinatória Assíncrona** - Validado CT4.

***

### ⚠️ Cenários de Exceção

* **Campos Obrigatórios Fiscal:** Deixar de preencher NCM ou impostos na aba Fiscal reterá o usuário no Form. Asteriscos sublinhados em vermelho devem barrar.

***

### 📊 Matriz de Cobertura

| Funcionalidade     | CT Positivo | CT Negativo | CT Borda |
| ------------------ | ----------- | ----------- | -------- |
| Cadastro Base      | CT1         | -           | -        |
| Fluxo de Variações | CT4         | -           | -        |
| Composição Kit     | -           | -           | CT3      |
| Unicidade SKU      | -           | CT2         | -        |

***

*Documentação gerada via DocVision Test*
