addInput

Класс: testCase
Пакет: sltest.testmanager

Добавьте входной файл к тесту

Описание

пример

input = addInput(tc,file,Name,Value) добавляет файл в раздел Inputs тестового примера и возвращает объект тестового воздействия, sltest.testmanager.TestInput.

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

расширить все

Контрольный пример, к которому вы хотите добавить входное тестовое воздействие, заданный как sltest.testmanager.TestCase объект.

Имя и путь MAT-файла или Microsoft® Excel® входной файл, заданный как вектор символов.

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

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Sheets','mysheet','Ranges','C1:F10','CreateIterations',false
Пары для MAT-файлов и файлов Microsoft Excel

расширить все

Тест, к которому применяются входы, задается как 1 или 2. Этот параметр применяется к тестам эквивалентности.

Пример: 'SimulationIndex',2

Опция добавления файла входа к таблице итерации под Iterations в тест, заданная как Boolean.

Пример: 'CreateIterations',false

Пары, используемые только с файлами Microsoft Excel

расширить все

Имена листов из файла Excel для использования в качестве входов теста, заданные как вектор символов, строка или массив строк.

Пример: 'testinputs', ["Heater","Plant"]

Области значений камер из листов, которые вы добавили в качестве входов, заданные как вектор символов, строка или массив строк. Можно задать 'Ranges' только если вы также задаете 'Sheets'. Заданные области значений должны соответствовать листам. Для примера, если вы задаете один лист, задайте одну область значений. Если вы задаете массив ячеек из листов, каждое значение в 'Ranges' массив ячеек должен соответствовать листу в 'Sheets' массив ячеек.

Можно задать 'Ranges' как показано в таблице.

Способы задать Range Описание

'Corner1:Corner2'

Прямоугольная область значений

Задайте область значений с помощью синтаксиса 'Corner1:Corner2', где Corner1 и Corner2 являются двумя противоположными углами, которые определяют область. Для примера, 'D2:H4' представляет прямоугольную область 3 на 5 между двумя углами D2 и H4 на листе. The 'Range' аргумент пары "имя-значение" не учитывает регистр и использует стиль ссылки A1 Excel (см. справку Excel).

Пример: 'Range','Corner1:Corner2'

''

Не заданные или пустые

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

Пример: 'Range',''

Примечание: Used Range относится к прямоугольному фрагменту электронной таблицы, которая на самом деле содержит данные. Функция импорта автоматически обнаруживает используемую область значений, обрезая начальные и конечные строки и столбцы, которые не содержат данных. Текст, который является только белым пространством, рассматривается как данные и захватывается в пределах используемой области значений.

'Row1:Row2'

Область значений строк

Можно идентифицировать область значений путем определения начальной и конечной строк с помощью обозначений строк Excel. Затем readtable автоматически определяет используемую область значений столбцов в обозначенных строках. Для образца функция импорта интерпретирует спецификацию области значений '1:7' как инструкция для чтения всех столбцов в используемой области значений в строках с 1 по 7 (включительно).

Пример: 'Range','1:7'

'Column1:Column2'

Область значений столбцов

Можно идентифицировать область значений, задав начальный и конечный столбцы с помощью обозначений столбцов Excel. Затем readtable автоматически определяет используемую область значений строк в обозначенных столбцах. Для образца функция импорта интерпретирует спецификацию области значений 'A:F' как инструкция для чтения всех строк в используемой области значений в столбцах A-F (включительно).

Пример: 'Range','A:F'

'NamedRange'

Имя Excel Области значений

В Excel можно создать имена для идентификации областей значений в электронной таблице. Например, можно выбрать прямоугольный фрагмент электронной таблицы и вызвать ее 'myTable'. Если такие именованные области значений существуют в электронной таблице, то функция импорта может считать эту область значений с помощью своего имени.

Пример: 'Range','myTable'

Пример: 'B2:C30', "D2:E30", ["B2:C30", "D2:E30", "B2:C30"]

Опция для использования каждого листа в файле Excel или заданная 'Sheets' аргумент как отдельный вход, заданный как true или false.

Выходные аргументы

расширить все

Тестовое воздействие, возвращенный как sltest.testmanager.TestInput объект или массив sltest.testmanager.TestInput объекты.

Примеры

расширить все

В этом примере показано, как добавить данные из электронной таблицы Microsoft ® Excel ® и сопоставить их с тестовым примером. Добавляются и отображаются только те два листа, которые имеют данные.

Загрузка модели примера

open_system('sltestExcelExample');

Создайте новый тестовый файл

tf = sltest.testmanager.TestFile('input_test_file.mldatx');

Получите тестовый набор и объекты теста

ts = getTestSuites(tf);
tc = getTestCases(ts);

Добавьте модель примера в качестве тестируемой системы

setProperty(tc,'Model','sltestExcelExample');

Добавьте данные Excel ® во входное сечение и укажите листы для добавления

excelfile = 'sltestExampleInputs.xlsx';
input = addInput(tc,excelfile,'Sheets',["Acceleration","Braking"]);

Сопоставьте входной сигнал для листов по имени блока

map(input(1),0);
map(input(2),0);

В этом примере показан синтаксис добавления листов и области значений файлов Excel.

% Create test file
tf = sltest.testmanager.TestFile('Excel Input Test File');

% Create test suite and test case
ts = createTestSuite(tf,'Excel Test Suite');
tc = createTestCase(ts,'baseline','Excel Input Test Case');

% Add Excel data to Inputs section, specifying sheets and range
input = addInput(tc,'C:\MyHomeDir\myexcel.xlsx',...
   'Sheets',["Optics","Torque","Throttle"],...
   'Ranges',["B1:C20","","D1:G10"]);
Введенный в R2015b