Test Generation for Custom Code in a Stateflow Chart
This example shows how to use test generation on a model with custom code in a Stateflow® chart.
Open the Model Containing Custom Code in a Stateflow Chart
open_system('sldvSFCustomCodeExample');
Generate Tests to Ensure Coverage of the Model
Use the sldvrun
function to run the Simulink® Design Verifier™ analysis.
opts = sldvoptions; opts.Mode = 'TestGeneration'; opts.ModelCoverageObjectives = 'ConditionDecision'; opts.SaveHarnessModel = 'off'; opts.SaveReport = 'off'; [status, fileNames] = sldvrun('sldvSFCustomCodeExample', opts);
01-Feb-2025 15:00:31 Checking compatibility for test generation: model 'sldvSFCustomCodeExample' Compiling model...done Building model representation...done 01-Feb-2025 15:00:46 'sldvSFCustomCodeExample' is compatible for test generation with Simulink Design Verifier. Generating tests using model representation from 01-Feb-2025 15:00:46... .......... 01-Feb-2025 15:00:54 Completed normally. Generating output files: 01-Feb-2025 15:00:56 Results generation completed. Data file: /tmp/Bdoc25a_2864802_2141877/tp72286bef/sldv-ex18712703/sldv_output/sldvSFCustomCodeExample/sldvSFCustomCodeExample_sldvdata.mat
Verify the Coverage
Use the sldvruntest
function to verify that the test suite achieves complete model coverage.
[~, finalCov] = sldvruntest('sldvSFCustomCodeExample', fileNames.DataFile, [], true); cvhtml('Final Coverage', finalCov);
Clean Up
To complete the example, close all models.
close_system('sldvSFCustomCodeExample', 0);