Piano di test - v1.0
Obiettivo
Definire test funzionali (Gherkin) e test tecnici minimi per verificare che la libreria soddisfi i requisiti FR e gli NFR principali.
Scope
- Selezione UI provider e comportamento coerente dei wrapper.
- Servizi: storage, logging, form utilities.
- AutoForm.
- Tabella server-driven.
- Menu laterale responsive.
- Auth opzionale (se attivata).
Suite di test (Gherkin)
TST-01 - Configurazione UI provider
Feature: UI Provider
Scenario: Selezione PrimeNG
Given un progetto consumer configura il provider "PrimeNG"
When la libreria viene inizializzata
Then i componenti wrapper renderizzano con PrimeNG
Scenario: Selezione Bootstrap
Given un progetto consumer configura il provider "Bootstrap"
When la libreria viene inizializzata
Then i componenti wrapper renderizzano con Bootstrap
TST-02 - Storage services
Feature: Storage Services
Scenario: Scrittura e lettura localStorage
Given una chiave e un valore serializzabile
When salvo il valore in localStorage tramite servizio
Then ottengo lo stesso valore tramite servizio
Scenario: Fallback/errore gestito
Given storage non disponibile o quota piena
When provo a salvare un valore
Then ottengo un errore gestito (senza crash applicazione)
TST-03 - Logging service
Feature: Logging
Scenario: Logging su console (default)
Given la libreria è configurata con logger "console"
When invoco un log di livello "info"
Then il messaggio viene scritto su console con formato coerente
TST-04 - AutoForm
Feature: AutoForm
Scenario: Generazione form da schema JSON
Given uno schema JSON con campi testo, numero e select
When renderizzo AutoForm
Then vedo i controlli corrispondenti con label e validazioni
Scenario: Output dati validati
Given AutoForm con validazioni obbligatorie
When compilo i campi con valori validi e invio
Then ricevo un oggetto output coerente con lo schema
TST-05 - Tabella server-side
Feature: Data Table (server-driven)
Scenario: Paginazione reale via API
Given una sorgente dati paginata
When cambio pagina
Then viene invocata una chiamata API con page e size corretti
Scenario: Ordinamento
Given la tabella supporta sort
When ordino una colonna
Then viene invocata una chiamata API con parametri di ordinamento corretti
TST-06 - Menu laterale responsive
Feature: Sidebar Menu
Scenario: Comportamento mobile
Given viewport mobile
When apro il menu tramite servizio
Then il menu appare come overlay laterale
Scenario: Comportamento desktop fisso
Given viewport desktop
When abilito modalità "fixed"
Then il menu resta visibile e non overlay
TST-07 - Auth opzionale (feature flag)
Feature: Optional Auth
Scenario: Auth disattivata
Given feature auth disattivata
When avvio l'app consumer
Then la libreria non inizializza flussi di autenticazione
Test tecnici minimi
- Unit test per servizi
storage,logger, utilities form. - Component test per
AutoForm,Table,Sidebar. - Smoke test “consumer app” (manuale) per configurazioni PrimeNG/Bootstrap.