Интеграция результатов пользовательского созданного скрипта MATLAB как тест

В этом примере вы соединяете требование со скриптом MATLAB. Состояние верификации в Редакторе Simulink Requirements отражает результаты испытаний.

Рабочий процесс

У вас есть скрипт MATLAB по имени runmytests.m который запускает тест для Встречного класса в Counter.m. Тестовый скрипт содержит пользовательские методы, которые написали результаты в формате TAP в файл с именем results.tap. Примите, что вы запустили тест, и он произвел results.tap файл, который содержит результаты теста. Вы хотите соединить результаты теста к требованию в counter_req.slreqx. Выполните эти шаги, чтобы создать и просмотреть состояние верификации с тестом под названием counterStartsAtZero в runmytests.m скрипт:

  1. Вы начинаете с открытия набора Требований counter_req.slreqx'.

  2. Вы создаете и указываете Linktype с помощью API.

  3. Вы создаете ссылку.

  4. Вы просматриваете Состояние Верификации.

Разделите 1: откройте набор требований

Откройте файл требований counter_req.slreqx в редакторе требований.

reqSet = slreq.open('counter_req.slreqx');

Это откроется, требования устанавливают 'counter_req.slreqx'.

Разделите 2: создайте и укажите пользовательский Linktype

Регистрация домена, необходимая для этого примера, написана в 'linktype_mymscripttap.m'. Файл шаблона для регистраций домена доступен в: matlabroot/toolbox/slrequirements/linktype_examples/linktype_TEMPLATE.m. Смотрите на реализацию GetResultFcn в файле регистрации домена:

edit linktype_mymscripttap;

Укажите пользовательский linktype:

rmi register linktype_mymscripttap;

Если команда возвращает какое-либо предупреждение, то необходимо не указать файл и следовать за командой снова. Не укажите файл путем ввода: rmi не указывают linktype_mymscripttap

Разделите 3: создайте ссылку

Сделайте struct, содержащий свойства внешнего теста. Выполните эти шаги, чтобы создать ссылку:

externalSource.id = 'counterStartsAtZero';
externalSource.artifact = 'runmytests.m';
externalSource.domain = 'linktype_mymscripttap';

Найдите требование связанным со ссылкой путем ввода:

requirement = reqSet.find('Type', 'Requirement', 'SID', 2);

Создайте ссылку путем ввода:

link = slreq.createLink(requirement, externalSource);

Это создает ссылку как тест counterStartsAtZero к требованию 'SID'. В Редакторе Требований ссылка появляется в Ссылках Confirmed by раздел.

Разделите 4: просмотрите состояние верификации

Чтобы обновить состояние верификации для набора требований, введите:

reqSet.updateVerificationStatus;

Выберите состояние верификации для требования:

status = reqSet.getVerificationStatus;

Редактор Требований показывает состояние верификации для целого набора требований, которые являются передачами или отказавший.

Состояние верификации для требований для counterStartsAtZero полностью проверяется. Редактор Требований показывает полные verfication состояния для всех других ссылок требований, сопоставленных с counter_req.slreqx.

reqSet = slreq.open('counter_req.slreqx');

Нажмите на Refresh кнопка, если вы не можете видеть состояние верификации для требований в Редакторе Требований. Состояние верификации показывает, что из трех тестов, один тест передал.

Очистите требования, если симуляция завершается.