Custom criteria in Test Manager- Is there any way to get signal by name?

1 visualización (últimos 30 días)
Now I am using the following code. In the following code I am using the index for getting the signal. Is there any method to get the index number or get signal by name? I have around 40 signals and the signal that I am checking at index 30. If I log more signals the index is changing. Is there any method to get the index number or get signal by name?
% Get the output Simulink.sdi.Run object
outobj = test.TestResult.getOutputRuns;
%Get object of type Simulink.sdi.Signal
sig = outobj.getSignalByIndex(1);
% return a struct containing data
data = sig.dataValues; % Contains both data and the time
assert(data.Data(end) == Test_Sequence1_Active_Step_Enum.Finish, 'Test Failed after %d seconds, last step in Test Sequence is : %s ',data.Time(end), data.Data(end));

Respuesta aceptada

Mark McBroom
Mark McBroom el 28 de Abr. de 2018
I think you will have to loop through all signals in the run and look at property sig.Name to find the signal name of interest. outobj.signalCount will tell you the total number of signals in the run and would be the upper bound of your loop.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by