Создайте тест и тестовую обвязку для модели или компонента модели
создает контрольный пример в указанном тестовом файле или тестовом наборе для заданного компонента модели. Тестовый файл должен существовать только tc
= createTestForComponent('TestFile',tf
,'Component',componentName
)CreateTestFile
установлено в true
.
создает тест с дополнительными опциями, заданными одним или несколькими tc
= createTestForComponent(___,Name,Value
)Name,Value
аргументы в виде пар. Задайте аргументы пары "имя-значение" после входных параметров тестового файла и компонента.
В этом примере показано, как создать тест для модели и сохранить входы в файле Excel. Тестовая обвязка создаётся автоматически.
Обратите внимание, что этот код использует текущую папку в качестве ExcelFileLocation
. Чтобы сохранить файл Excel в другом месте, можно изменить ExcelFileLocation
значение в другую папку с возможностью записи.
load_system('vdp'); tf = sltest.testmanager.TestFile('MyBaselineTestFile'); sltest.testmanager.createTestForComponent('TestFile',tf,... 'Component','vdp',... 'TestType','baseline',... 'ExcelFileLocation','mybaseline_inputdata.xlsx');
Создайте тест эквивалентности (back-to-back) для Controller
компонент sltestNormalSILEquivalenceExample
модель.
load_system('sltestNormalSILEquivalenceExample'); tf = sltest.testmanager.TestFile('MyB2BTestFile'); sltest.testmanager.createTestForComponent("TestFile",tf,... "Component","sltestNormalSILEquivalenceExample/Controller",... "TestType","equivalence",... "Simulation1Mode","Normal",... "Simulation2Mode","Software-in-the-Loop (SIL)");
### Starting build procedure for: Controller ### Successful completion of build procedure for: Controller ### Creating SIL block ... Building with 'gcc'. MEX completed successfully. Build Summary Top model targets built: Model Action Rebuild Reason =========================================================================================== Controller Code generated and compiled Code generation information file does not exist. 1 of 1 models built (0 models already up to date) Build duration: 0h 0m 30.128s
tf
- Тестовый файл или набор, в который можно добавить тестsltest.testmanager.TestFile
| объекта sltest.testmanager.TestSuite
строка | объекта | вектор символовТестовый файл или тестовый набор, в который можно добавить тест, заданный как sltest.testmanager.TestFile
или sltest.testmanager.TestSuite
объект, строка или вектор символов. Если CreateTestFile
false, объект тестового файла должен существовать. Если CreateTestFile
является true
, TestFile
- путь к новому тестовому файлу, заданный как строковый или символьный вектор.
C
Пример: 'TestFile','myTestFile'
componentName
- Модель или компонент для тестированияSimulink.BlockPath
объектМодель или компонент для тестирования, заданная как строка или вектор символов полного пути или как Simulink.BlockPath
объект. Можно задать любую модель или блок, который поддерживается для генерации тестовых обвязок. Смотрите Тестовую обвязку и отношение модели для списка компонентов, для которых можно создать тестовые обвязки.
Пример: 'Component','sf_car/shift_logic'
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'CreateTestFile',true
'CreateTestFile'
- Создавать ли новый тестовый файлfalse
(по умолчанию) | true
Создание ли нового тестового файла, заданного как разделенная разделенными запятой парами, состоящая из 'CreateTestFile'
и true
или false
.
Пример: 'CreateTestFile',true
'TopModel'
- Имя модели в верхней части иерархииИмя модели в верхней части иерархии, если тестируемый компонент находится в модели-ссылке, заданной как разделенная разделенными запятой парами, состоящая из 'TopModel'
и как строка или вектор символов. Если на componentName
является верхней моделью, не используйте TopModel
свойство.
Пример: 'TopModel','Plant'
'TestType'
- Тип теста'baseline'
(по умолчанию) | 'equivalence'
| 'simulation'
Тип теста, заданный как разделенная разделенными запятой парами, состоящая из 'TestType'
и 'baseline'
, 'equivalence'
, или 'simulation'
.
Пример: 'TestType','equivalence'
'CreateHarness'
- Создавать ли тестовый жгутtrue
(по умолчанию) | false
Является ли создание тестовой обвязки для модели, заданной как разделенная запятой пара, состоящая из 'CreateHarness'
и true
или false
. Когда Component
не является моделью верхнего уровня или когда тесты генерируются с помощью Simulink® Design Verifier™, эта опция установлена на true
автоматически и всегда создаётся тестовая обвязка. Если тестируемая модель является моделью экспорта функций, блок планировщика Test Sequence создается автоматически в тестовой обвязке.
Пример: 'CreateHarness',false
'UseComponentInputs'
- Опция моделирования модели для получения входовtrue
(по умолчанию) | false
Опция для симуляции модели, чтобы получить входы компонентов для созданной тестовой обвязки, заданная как true
или false
. Если это свойство true
, тестовая обвязка использует входы из симуляции модели. Если это свойство false
, тестовая обвязка не использует входов компонента из симуляции.
Пример: 'UseComponentInputs',false
'FunctionInterface'
- Функциональный интерфейс для переиспользуемой подсистемы библиотекиИнтерфейс функции, заданный как разделенная разделенными запятой парами, состоящая из 'FunctionInterface'
и строка или вектор символов. Задайте FunctionInterface
для создания тестов для переиспользуемой подсистемы библиотеки. Подсистема должна располагаться на верхнем уровне библиотеки подсистем и должна иметь функциональный интерфейс.
Пример: 'FunctionInterface','single'
'Simulation1Mode'
- Режим симуляции для симуляции 1 проверки эквивалентности'Normal'
| 'Accelerator'
Режим симуляции для симуляции 1 теста эквивалентности, заданный как разделенная разделенными запятой парами, состоящая из 'Simulation1Mode'
и любой из них 'Normal'
или 'Accelerator'
. Если вы не задаете режим симуляции, используется режим тестируемой системы. Необходимая тестовая обвязка создаётся автоматически для режима симуляции.
Пример: 'Simulation1Mode','Normal'
'Simulation2Mode'
- Режим симуляции для симуляции 2 проверки эквивалентности'Normal'
| 'Accelerator'
| 'Rapid Accelerator'
| 'Software-in-the-Loop (SIL)'
| 'Processor-in-the-Loop (PIL)'
Режим симуляции для симуляции 2 теста эквивалентности, заданный как разделенная разделенными запятой парами, состоящая из 'Simulation2Mode'
и 'Normal'
, 'Accelerator'
, 'Rapid Accelerator'
, 'Software-in-the-Loop (SIL)'
, или 'Processor-in-the-Loop (PIL)'
.. Если вы не задаете режим симуляции, используется режим тестируемой системы. Если TestType
является 'equivalence'
и Simulation2Mode
является 'Software-in-the-Loop (SIL)'
дополнительная тестовая обвязка создается в сложение с тестом и тестовую обвязку, если только тестируемый компонент не является атомарной подсистемой. При тестировании эквивалентности атомарной подсистемы с использованием режимов normal и SIL или PIL, создается и используется одна тестовая обвязка для обоих режимов.
Пример: 'Simulation2Mode','Software-in-the-Loop (SIL)'
'InputsLocation'
- Путь к файлу для хранения записанных входов в MAT-файлеПуть к файлу для хранения записанных входов в MAT-файле, заданный как разделенная разделенными запятой парами, состоящая из 'InputsLocation'
и вектор символов или строковые массивы. Включите расширение файла .mat
. Если вы не задаете InputsLocation
используется расположение по умолчанию.
Пример: 'InputsLocation','C:\MATLAB\inputs_data.mat'
'BaselineLocation'
- Путь к файлу для хранения базовых записанных выходов в MAT-файлеПуть к файлу для хранения базовых записанных выходных данных в MAT-файле, заданный как разделенная разделенными запятой парами, состоящая из 'BaselineLocation'
и вектор символов или строка. Включите расширение файла .mat
. Если вы не задаете BaselineLocation
используется расположение по умолчанию.
Пример: 'BaselineLocation','C:\MATLAB\baseline_data.mat'
'CreateExcelFile'
- Использовать ли формат Excel для входных и выходных параметровfalse
(по умолчанию) | true
Использовать ли Excel® формат для входов и, только для базовых тестов, выходов, заданный как разделенная разделенными запятой парами, состоящая из 'CreateExcelFile'
и любой из них true
или false
. Если вы используете 'ExcelFileLocation'
аргумент, чтобы указать имя файла и расположение, вы не должны также использовать 'CreateExcelFile'
.
Пример: 'CreateExcelFile',true
'ExcelFileLocation'
- Путь к файлу ExcelПуть к файлу Excel, заданный как разделенная разделенными запятой парами, состоящая из 'ExcelFileLocation'
и вектор символов или строковые массивы. Включите расширение .xlsx
. Если вы задаете местоположение, вам не нужно также использовать 'CreateExcelFile'
опция. Если вы не задаете ExcelFileLocation
, используется текущая рабочая папка.
Примечание
Если SLDVTestGeneration
является true
и HarnessSource
является 'Signal Editor'
невозможно сохранить данные в файл Excel.
Пример: 'ExcelFileLocation','C:\MATLAB\baseline_data.xlsx'
'Sheet'
- Имя листа Excel, в котором сохраняются данныеИмя листа Excel, в котором можно сохранить данные, заданное как разделенная разделенными запятой парами, состоящая из 'Sheet'
и вектор символов или строка. Если вы не задаете Sheet
, используется текущая рабочая папка.
Пример: 'Sheet','MySubsysTest'
'SLDVTestGeneration'
- Генерировать ли тесты с помощью Simulink Design Verifier'off'
(по умолчанию) | 'on'
| 'EnhancedMCDC'
Является ли генерация тестов с помощью Simulink Design Verifier, задается как:
'off'
- Не используйте Simulink Design Verifier для генерации тестов.
'on'
- Используйте Simulink Design Verifier, чтобы сгенерировать тесты и использовать опции Simulink Design Verifier из строения модели.
'EnhancedMCDC'
- Используйте Simulink Design Verifier, чтобы сгенерировать тесты с целями покрытия модели как расширенный MCDC. The EnhancedMCDC
опция действительна только в том случае, если TestType
является 'equivalence'
и Simulation2Model
является 'Software-in-the-Loop (SIL)'
или 'Processor-in-the-Loop (PIL)'
.
Примечание
Чтобы сгенерировать тесты из Simulink Design Verifier, тестируемая система должна быть атомарной подсистемой.
Пример: 'SLDVTestGeneration','on'
'HarnessSource'
- Входной исходный блок для обвязки'Inport'
(по умолчанию) | 'Signal Editor'
Вход исходный блок для тестовой обвязки, заданный как разделенная запятой пара, состоящий из 'HarnessSource'
и любой из них 'Inport'
или 'Signal Editor'
.
Пример: 'HarnessSource','Signal Editor'
'HarnessOptions'
- Опции создания кабельных трассПроверьте опции создания кабельных трасс, заданные как массив ячеек из пар "имя-значение", разделенных запятыми. Посмотрите sltest.harness.create
для допустимых опций. Не включать harnessOwner
указатель как первый аргумент в массиве ячеек. Первый аргумент автоматически устанавливается на Component
значение.
Пример: {'HarnessOptions','SynchronizationMode','SyncOnOpen','SeparateAssessment',true}
tc
- Тестsltest.testmanager.TestCase
объектТест, возвращенный как sltest.testmanager.TestCase
объект.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.