exponenta event banner

Интеграция результатов из внешнего файла результатов

В этом примере необходимо связать требование с файлом результатов в формате Excel. Статус проверки в редакторе требований Simulink отражает результаты теста. В этом примере выполняются шаги, описанные в разделе Связывание с файлом результатов. Чтобы запустить этот пример, щелкните Open Example и запустить его. В этом примере используются:

  • Файл набора требований с именем counter_req.slreqx.

  • Файл результатов теста с именем results.xlsx. Этот файл содержит тестовый пример с именем counterSetsValue.

Шаг 1: Регистрация типа канала.

Перед созданием ссылок необходимо зарегистрировать тип связи из файла набора требований. Открыть файл требований counter_req.slreqx в редакторе требований:

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

Зарегистрируйте тип связи, специфичный для внешнего файла результатов. Для этого примера требуется регистрация домена linktype_myexcelresults.m. Регистрация пользовательского типа линий link type_myexcelresults.m, введите:

rmi register linktype_myexcelresults;

Пользовательская логика в GetResultFcn функция находит файл результатов, соответствующий тестовому случаю, и извлекает результаты из этого файла результатов. Для получения дополнительной информации о GetResultFcn, см. Ссылки и типы ссылок. Примечание.Если команда register возвращает какое-либо предупреждение, то необходимо отменить регистрацию файла и снова выполнить команду. Чтобы отменить регистрацию файла, введите rmi unregister linktype_myexcelresults.

Шаг 2: Создание ссылки

Сделать struct содержит свойства внешнего результата. Для создания связи в командной строке введите:

externalSource.id = 'counterSetsValue';
externalSource.artifact = 'results.xlsx';
externalSource.domain = 'linktype_myexcelresults';

Требование, связанное с каналом, имеет SID, равный 4. Для поиска требования, связанного со ссылкой, введите:

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

Чтобы создать ссылку, введите:

link = slreq.createLink(requirement, externalSource);

Эта команда создает связь между тестовыми случаями counterSetsValue и требование с SID 4. В редакторе требований ссылка отображается на панели «Сведения» в разделе «Ссылки».

Шаг 3: Просмотр статуса проверки

Для просмотра статуса проверки необходимо сначала обновить статус проверки для набора требований. В командной строке MATLAB введите:

 reqSet.updateVerificationStatus;

Для просмотра столбца статуса проверки в редакторе требований выберите Столбцы > Статус проверки. После обновления выберите статус проверки для требования:

status = reqSet.getVerificationStatus
status = struct with fields:
         total: 3
        passed: 1
        failed: 0
    unexecuted: 0
     justified: 0
          none: 2

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

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

Редактор требований показывает статус проверки для каждого требования в наборе требований.

Статус проверки для требований к counterSetsValue полностью проверен.

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

Очистка

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

slreq.clear;
bdclose('all');
rmi unregister linktype_myexcelresults;

Связанные темы