Test Generation on Model with C Caller Block
This example shows how to use test generation on a model with a C Caller block and custom C code
Open the Model Containing the C Caller Block and Custom Code
open_system('sldvexCCallerBlock');

Generate Tests to Ensure Coverage of the Model
Use the sldvrun function to run Simulink® Design Verifier™ analysis.
opts = sldvoptions; opts.Mode = 'TestGeneration'; opts.ModelCoverageObjectives = 'ConditionDecision'; opts.SaveHarnessModel = 'off'; opts.SaveReport = 'off'; [status, fileNames] = sldvrun('sldvexCCallerBlock', opts);
25-Jan-2026 04:49:06
Checking compatibility for test generation: model 'sldvexCCallerBlock'
Compiling model...done
Building model representation...done
25-Jan-2026 04:49:21
'sldvexCCallerBlock' is compatible for test generation with Simulink Design Verifier.
Generating tests...
..........
25-Jan-2026 04:49:29
Completed normally.
Generating output files:
25-Jan-2026 04:49:30
Results generation completed.
Data file:
/tmp/Bdoc26a_3146167_2121165/tpfd5df77b/sldv-ex07804984/sldv_output/sldvexCCallerBlock/sldvexCCallerBlock_sldvdata.mat
Verify the Coverage
Use the sldvruntest function to verify that the test suite achieves complete model coverage.
[~, finalCov] = sldvruntest('sldvexCCallerBlock', fileNames.DataFile, [], true); cvhtml('Final Coverage', finalCov);
Clean Up
To complete the example, close all models.
close_system('sldvexCCallerBlock', 0);