Is there a way to change order of TestCases in sltest.tes​tmanager.T​estSuite programmatically?

6 Ansichten (letzte 30 Tage)
I'm importing content of a TestFile from external server. Everything works well, but there is a case, when order of the TestCases changes, and I want to refrect it in the parent sltest.testmanager.TestSuite.
I thought that sltest.testmanager.moveTests might be helpful, as it accepts array of objects to be moved, and moving those testcases to a temporary TestSuite, then back to the original place. Unfortunately order of the array doesn't seem to be respected - testcases are landing in their original order.
% sort test cases within this test suite
unsortedTCs = parentTS.getTestCases();
if ~isempty(unsortedTCs)
% collect the indexes of the referred testcases
sorting_array = getOriginalIndexes(unsortedTCs);
[~, ind] = sort(sorting_array);
sortedTCs = unsortedTCs(ind);
tempTestSuite = createTestSuite(parentTS, 'temp');
sltest.testmanager.moveTests(sortedTCs, tempTestSuite);
sltest.testmanager.moveTests(sortedTCs, parentTS);
remove(tempTestSuite);
end
Any hint?
In UI I can drag&drop testcases to change their order - looking for similar functionality over API.
Thank you!

Antworten (1)

Paul Urban
Paul Urban am 10 Nov. 2022
You can use the moveTest api’s starting with R2020b release to move tests with the following. We will request the documentation to be update with this example
sltest.testmanager.moveTests(tc1, tc2); % move tc1 below tc2
sltest.testmanager.moveTests(tc3, tc1); % move tc3 to top before tc1

Kategorien

Mehr zu Test Scripts finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by