Contenuto principale

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Generazione dei casi di test per un modello

In Simulink® Design Verifier™, un caso di test è un insieme di valori di input e corrispondenti output attesi utilizzati per verificare che un modello si comporti come previsto in condizioni specificate. Con Simulink Design Verifier, è possibile generare casi di test per la coverage del modello e obiettivi personalizzati. È inoltre possibile misurare la coverage dei casi di test esistenti basati sui requisiti ed estendere tali casi di test per aumentare la coverage o conseguire la coverage completa.

Workflow for generating and analyzing test cases.

Prima di iniziare un'analisi, eseguire un controllo di compatibilità sul modello. Simulink Design Verifier analizza il modello solo se è compatibile con l'analisi. Dopo il controllo di compatibilità, specificare le impostazioni di generazione del caso di test sul modello ed eseguire l'analisi. Una volta completata l'analisi di generazione dei test, rivedere i risultati.

Esistono diversi modi per rivedere i risultati dell'analisi:

  • Rivedere i risultati dell'analisi a colpo d'occhio evidenziando i risultati sul modello.

  • Creare un modello di test harness per simulare i casi di test o eseguire il debug dei controesempi.

  • Generare un report sulla coverage del modello.

  • Visualizzare i test generati in Simulation Data Inspector.

  • Generare un report HTML o PDF contenente informazioni dettagliate sui risultati dell'analisi.

Modello di esempio

Questo tutorial utilizza un modello semplificato di controllo della velocità di crociera sldvexCruiseControl che regola l'acceleratore del motore per mantenere la velocità specificata. Si generano casi di test che soddisfano gli obiettivi di coverage delle condizioni e delle decisioni del modello e si simulano questi casi di test per generare il report di coverage del modello.

Model sldvexCruiseControl.

Questo modello di controllo della velocità di crociera sldvexCruiseControl soddisfa questi requisiti:

  • Il sistema di controllo si attiva quando i segnali engage e enable sono true. Questa condizione è definita dal blocco AND.

  • Quando il sistema è attivato, il blocco Switch passa set speed al controller PI. Il controller PI calcola throttle integrando il termine di errore definito dalla differenza set speed - current speed.

  • throttle continua ad aumentare o diminuire fino a quando set speed è maggiore di current speed o minore di current speed, rispettivamente.

  • Quando il sistema non è attivato, il blocco Discrete-Time Integrator si reimposta. Il termine di errore è pari a zero, il che significa che throttle è in posizione di reset.

Quando si esegue l'analisi di generazione dei test, Simulink Design Verifier genera casi di test per gli obiettivi di coverage del modello associati a ciascun elemento del modello. La tabella elenca gli obiettivi di coverage delle condizioni e delle decisioni per i blocchi Model associati.

BloccoObiettivo di coverage del modelloDescrizione del caso di test generato
AND

Condizione

Ogni valore di input è impostato su vero o falso in modo indipendente.

NOT

Condizione

L'input è impostato su vero o falso in modo indipendente.
Switch

Decisione

Il caso di test dimostra che Switch passa entrambi i segnali di input all'output.
Discrete-Time Integrator

Decisione

  • Il caso di test dimostra il comportamento di saturazione dell'integratore.

  • Soddisfa le condizioni di reset esterno.

In questo tutorial, si esegue l'analisi della generazione dei test sul modello sldvexCruiseControl. L'analisi genera casi di test che soddisfano gli obiettivi di coverage delle condizioni e delle decisioni del modello.

Si imparerà a:

  1. Configurare le impostazioni del modello per l'analisi Simulink Design Verifier.

  2. Verificare la compatibilità del modello per l'analisi della generazione dei test.

  3. Configurare il modello per generare i test ed eseguire l'analisi.

  4. Visualizzare i risultati dell'analisi della generazione dei test.

  5. Creare un modello harness e generare un report sulla coverage.

Per avviare il tutorial, vedere Preparazione del modello per l'analisi della generazione dei test.