Can I access what's in the test vector in MatLab code during Main Test?

6 views (last 30 days)
James on 26 Aug 2011
I saw a matlab page that talked about a getValue method, but I get an error saying "Attempt to reference field of non-structure array".
I don't think I understand what TestVector is, so that I can access its contents. The help really focuses on how to create them using the wizard.
  1 Comment
James on 26 Aug 2011
What I've sometimes done is created an input and signal straight to an output simply for a signal that's in the Test Vector (such as expected output), so that I can use it in a check as is appropriate. It's the easiest access I've normally found to it.

Sign in to comment.

Accepted Answer

Bart Addis
Bart Addis on 29 Aug 2011
If you create a MATLAB element in the Main Test, you'll be able to access the test vector directly by name. It will contain the value for the current iteration.
If you create a test vector T with values [1:1:10], then in iteration 3, T will have the value 3.
James on 29 Aug 2011
The former, the wizard claims it evaluates to a 1x1 cell but I've realised - for example - TestVector1(1,3) does give access to the third element on the first row.

Sign in to comment.

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 26 Aug 2011
Is your test vector data a structure? The function to get its field is called getfield(). getvalue() seems to be a different function.
James on 29 Aug 2011
If you want to access SystemTest variables from the Command Window you need to use:
stresults.ResultsDataSet; // used after a test
// or
obj = systest.testresults.getCurrent;
currentResults = obj.ResultsDataSet; // used during a test
If you hadn't realised, I'm not trying to access it in the Command Window - but in a SystemTest Matlab code element.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!