sltest.harness.import

Импортируйте модель Simulink к тестовой обвязке

Синтаксис

sltest.harness.import(harnessOwner,'ImportFileName',importModel,'ComponentName',TestedComponent)
sltest.harness.import(harnessOwner,'ImportFileName',importModel,'ComponentName',TestedComponent,Name,Value)

Описание

sltest.harness.import(harnessOwner,'ImportFileName',importModel,'ComponentName',TestedComponent) создает тестовую обвязку из модели importModel Simulink®, с именем обвязки по умолчанию, сопоставленным с harnessOwner, с TestedComponent компонент обвязки под тестом.

sltest.harness.import(harnessOwner,'ImportFileName',importModel,'ComponentName',TestedComponent,Name,Value) использует дополнительные аргументы Name,Value, чтобы задать свойства тестовой обвязки.

Примеры

свернуть все

Этот пример показывает, как использовать sltest.harness.import, чтобы создать тестовую обвязку путем импорта автономной модели верификации. Вы создаете тестовую обвязку для основной подсистемы круиз-контроля.

Автономная модель содержит блок Signal Builder, управляющий копией подсистемы Controller с подсистемой, проверяющей, что дроссель, вывод переходит в 0, если тормоз применяется для трех последовательных временных шагов.

exPath = fullfile(matlabroot,'examples','simulinktest');
mainModel = 'sltestBasicCruiseControl';
harnessModel = 'sltestBasicCruiseControlHarnessModel';

1. Загрузите основную модель.

load_system(fullfile(exPath,mainModel))

2. Создайте тестовую обвязку из автономной модели. Создайте обвязку для подсистемы Controller в основной модели с Controller компонент обвязки под тестом.

sltest.harness.import([mainModel '/Controller'],'ImportFileName',harnessModel,...
    'ComponentName',[harnessModel '/Controller'],'Name',...
    'VerificationSubsystemHarness')

3. Возвратите свойства новой тестовой обвязки.

testHarnessProperties = sltest.harness.find([mainModel '/Controller'])
testHarnessProperties = 1x2 struct array with fields:
    model
    name
    description
    type
    ownerHandle
    ownerFullPath
    ownerType
    isOpen
    canBeOpened
    lockMode
    verificationMode
    saveExternally
    rebuildOnOpen
    rebuildModelData
    postRebuildCallback
    graphical
    origSrc
    origSink
    synchronizationMode

close_system(mainModel,0)

Входные параметры

свернуть все

Образцовый или указатель компонента или путь, заданный как вектор символов или дважды

Пример: 1.9500e+03

Пример: 'model_name'

Пример: 'model_name/Subsystem'

Путь к автономной модели, чтобы импортировать как тестовая обвязка

Пример: 'C:\MATLAB\sltestBasicCruiseControlTestModel'

Имя или путь и имя протестированного компонента в автономной модели. После импорта этот компонент соединяется с компонентом harnessOwner в основной модели.

Пример: 'Контроллер'

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Name','harness_name','RebuildOnOpen',true

Имя для обвязки вы создаете, заданный как пара, разделенная запятой, состоящая из 'Name' и допустимого имени файла MATLAB.

Пример: 'Name','harness_name'

Опция, чтобы задать, когда компонент под тестом синхронизируется между основной моделью и тестовой обвязкой.

  • 'SyncOnOpenAndClose' восстанавливает компонент под тестом из основной модели, когда тестовая обвязка открывается и продвигает изменения от компонента под тестом к основной модели, когда тестовая обвязка закрывается.

  • 'SyncOnOpen' восстанавливает компонент под тестом из основной модели, когда тестовая обвязка открывается. Это не продвигает изменения от компонента под тестом к основной модели, когда тестовая обвязка закрывается.

  • 'SyncOnPushRebuildOnly' восстанавливает и продвигает изменения только, когда вы вручную инициируете, восстанавливают или стремятся к целой тестовой обвязке. Для получения дополнительной информации смотрите, Синхронизируют Изменения Между Тестовой обвязкой и Моделью.

Пример: 'SynchronizationMode','SyncOnOpen'

Опция, чтобы иметь обвязку восстанавливает, когда это открывается, заданный как пара, разделенная запятой, состоящая из 'UseDefaultName' и false или true.

Пример: 'RebuildOnOpen',true

Опция, чтобы иметь конфигурацию модели и записи рабочего пространства модели, обновленные во время тестовой обвязки, восстанавливает, заданный как пара, разделенная запятой, состоящая из 'RebuildModelData' и true или false.

Пример: 'RebuildModelData',true

Опция, чтобы иметь каждую тестовую обвязку, сохраненную как отдельный файл SLX, заданный как пара, разделенная запятой, состоящая из 'SaveExternally' и true или false. Модель не может использовать и внешнее и внутреннее устройство хранения данных тестовой обвязки. Если модель уже имеет тестовые обвязки, новая тестовая обвязка следует за типом хранения существующих обвязок, которые не заменяет эта опция. Смотрите Управляют Тестовыми обвязками.

Пример: 'SaveExternally',true

Если 'SaveExternally' задан, можно задать местоположение для внешнего файла SLX обвязки с помощью пары, разделенной запятой, состоящей из 'HarnessPath' и вектора символов..

Пример: 'HarnessPath','C:\MATLAB\SafetyTests'

Введенный в R2017a