Пакет: sltest.plugins.coverage
Определение метрик покрытия для тестов, выполняемых с использованием платформы тестирования блока MATLAB
Используйте sltest.plugins.coverage.CoverageMetrics для указания метрик покрытия. Передайте объект метрик покрытия в объект подключаемого модуля покрытия модели.
создает объект метрик покрытия с заданными свойствами.cmo = sltest.plugins.coverage.CoverageMetrics(Properties)
Можно также импортировать подключаемый модуль, а затем использовать имя класса для создания объекта:
import sltest.plugins.coverage.CoverageMetrics cmo = CoverageMetrics(Properties)
Decision - Охват принятием решенийВключение или отключение сбора данных о покрытии принятия решений.
Пример: 'Decision',true
SetAccess | public |
GetAccess | public |
Condition - Покрытие состоянияВключение или отключение сбора данных о покрытии условий.
Пример: 'Condition',true
SetAccess | public |
GetAccess | public |
MCDC - покрытие MCDCВключение или отключение коллекции измененных условий/решений.
Пример: 'MCDC',true
SetAccess | public |
GetAccess | public |
LookupTable - Охват таблицы подстановкиВключение или отключение коллекции покрытия таблицы подстановки.
Пример: 'LookupTable',true
SetAccess | public |
GetAccess | public |
SignalRange - Охват диапазонов сигналовВключение или отключение сбора данных об охвате диапазонов сигналов.
Пример: 'SignalRange',true
SetAccess | public |
GetAccess | public |
SignalSize - Охват по размеру сигналаВключение или отключение сбора данных о размере сигнала.
Пример: 'SignalSize',true
SetAccess | public |
GetAccess | public |
SimulinkDesignVerifier - Покрытие блока Simulink Design VerifierВключение или отключение коллекции покрытия блоков Simulink Design Verifier.
Пример: 'SimulinkDesignVerifier',true
SetAccess | public |
GetAccess | public |
SaturationOnIntegerOverflow - Насыщенность блоков при переполнении целых чиселВключите или отключите запись количества раз, когда блок насыщается при переполнении целых чисел.
Пример: 'SaturationOnIntegerOverflow',true
SetAccess | public |
GetAccess | public |
RelationalBoundary - Покрытие реляционных границВключение или отключение реляционного граничного покрытия.
Пример: 'RelationalBoundary',true
SetAccess | public |
GetAccess | public |
В этом примере показано, как использовать MATLAB ® Unit Test для сбора покрытия для тестов, выполняемых в модели Simulink ®.
Вы запускаете тесты в AutopilotTestFile.mldatx тестовый файл при сборе покрытия измененного условия/решения (MCDC).
1. Импортируйте тестовый питатель и подключаемые модули для примера.
import matlab.unittest.TestRunner import sltest.plugins.ModelCoveragePlugin import sltest.plugins.coverage.CoverageMetrics
2. Создайте объект подключаемого модуля покрытия модели и объект метрик покрытия. В этом примере для ссылочных моделей используется покрытие MCDC и покрытие записей.
mcdcMet = CoverageMetrics('Decision',false,'Condition',false,'MCDC',true); covSettings = ModelCoveragePlugin('RecordModelReferenceCoverage',true,... 'Collecting',mcdcMet);
3. Создайте набор тестов MATLAB ® Unit Test из файла теста.
tf = sltest.testmanager.TestFile('AutopilotTestFile.mldatx');
APSuite = testsuite(tf.FilePath);4. Создайте тестовый питатель без подключаемых модулей, а затем добавьте подключаемый модуль покрытия к питателю.
APRun = TestRunner.withNoPlugins(); addPlugin(APRun,covSettings);
5. Запустите люкс.
% Turn off the command line warnings. warning off Stateflow:cdr:VerifyDangerousComparison warning off Stateflow:Runtime:TestVerificationFailed APResult = run(APRun,APSuite)
Coverage Report for RollAutopilotMdlRef/Roll Reference
/tmp/BR2021ad_1657350_5204/mlx_to_docbook1/tp45fcfabf_e6b7_4225_ac8a_a1da536fa038.html
APResult =
TestResult with properties:
Name: 'AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test'
Passed: 0
Failed: 1
Incomplete: 0
Duration: 5.1177
Details: [1x1 struct]
Totals:
0 Passed, 1 Failed, 0 Incomplete.
5.1177 seconds testing time.
6. Для просмотра отчета о покрытии можно открыть ссылку в выходных данных командной строки.
Очистка. Очистить результаты и повторно включить предупреждения.
warning on Stateflow:cdr:VerifyDangerousComparison warning on Stateflow:Runtime:TestVerificationFailed sltest.testmanager.clearResults; sltest.testmanager.clear; sltest.testmanager.close;
sltest.plugins.coverage.ModelCoverageReport | sltest.plugins.ModelCoveragePlugin
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.