Пакет: sltest.plugins.coverage
Задайте метрики покрытия для тестового прогона со средой Модульного теста MATLAB
Используйте sltest.plugins.coverage.CoverageMetrics
класс, чтобы задать метрики покрытия. Передайте объект метрик покрытия объекту плагина покрытия модели.
создает объект метрик покрытия с заданными свойствами.cmo
= sltest.plugins.coverage.CoverageMetrics(Properties
)
Можно также импортировать плагин, затем использовать имя класса, чтобы создать объект:
import sltest.plugins.coverage.CoverageMetrics cmo = CoverageMetrics(Properties)
Decision
— Decision CoverageВключите или отключите набор Decision Coverage.
Пример: 'Decision',true
SetAccess | public |
GetAccess | public |
Condition
— Покрытие условияВключите или отключите набор покрытия условия.
Пример: 'Condition',true
SetAccess | public |
GetAccess | public |
MCDC
— Покрытие MCDCВключите или отключите измененное условие / набор Decision Coverage.
Пример: '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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.