addInput

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

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

Синтаксис

input = addInput(tc,file,Name,Value)

Описание

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

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

развернуть все

Тест, что вы хотите добавить тестовое воздействие в, заданный как объект sltest.testmanager.TestCase.

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

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

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

Пример: 'Sheets','mysheet','Ranges','C1:F10','CreateIterations',false

Пары для MAT-файлов и файлов Microsoft Excel

развернуть все

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

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

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

Пример: '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 на рабочем листе. Аргумент пары "имя-значение" 'Range' не является чувствительным к регистру, и использует стиль ссылки Excel A1 (см. справку Excel).

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

''

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

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

Пример: '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. Электронная таблица, используемая в этом примере, расположена в папке в качестве примера. Добавьте только два листа, которые имеют данные, как введено.

% Load example model
open_system('sltestExcelExample');

% Create new test file
tf = sltest.testmanager.TestFile('C:\MATLAB\input_test_file.mldatx');
% Get test suite object
ts = getTestSuites(tf);
% Get test case object
tc = getTestCases(ts);

% Add the example model as the system under test
setProperty(tc,'Model','sltestExcelExample');

% Add Excel data to Inputs section
% Specify two sheets to add: Acceleration and Braking
input_path = fullfile(matlabroot,'toolbox','simulinktest',...
             'simulinktestdemos','sltestExampleInputs.xlsx');
input = addInput(tc,input_path,'Sheets',["Acceleration","Braking"]);

% Map the input signal for the sheets by block name
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