exponenta event banner

Базовый рабочий процесс для расширенного анализа MCDC

Для создания тестовых примеров для расширенных целей покрытия по решению измененных условий (MCDC):

  1. На вкладке Design Verifier в разделе Mode выберите Test Generation.

  2. Нажмите кнопку Test Generation Settings (Параметры создания тестов).

  3. В диалоговом окне «Параметры конфигурации» на панели «Design Verifier > Test Generation» задайте для параметра «Model coverage targets» значение Enhanced MCDC. Нажмите кнопку ОК.

  4. Щелкните Создать тесты (Generate Tests).

Примечание

Расширенный анализ MCDC не поддерживается при создании тестовых примеров для кода, созданного встроенным кодером. Программное обеспечение учитывает цели покрытия MCDC для анализа генерации тестов.

Simulink ® Design Verifier™ анализирует модель для целей расширенного покрытия MCDC.

После завершения анализа:

  • Программа выделяет модель с результатами анализа.

  • В окне Инспектор результатов (Results Inspector) отображается сводка целей покрытия модели, включая статус обнаруживаемости.

    В окне Инспектор результатов (Results Inspector) отображаются следующие статусы обнаруживаемости для цели покрытия модели:

    • Поддающийся обнаружению

    • Не обнаруживается

    • Нерешенный

    В таблице перечислены возможные комбинации статуса цели и статусов обнаруживаемости.

    Статус целиСостояние обнаруживаемостиОписание тестового примера

    Удовлетворенный

    Поддающийся обнаружению

    Тестовый случай удовлетворяет цели охвата модели и может быть обнаружен в месте обнаружения.

    Удовлетворено - требуется моделирование

    Поддающийся обнаружению

    Тестовый случай удовлетворяет цели охвата модели и может быть обнаружен в месте обнаружения.

    Для подтверждения удовлетворенного статуса необходимо выполнить дополнительное моделирование тестовых случаев. Дополнительные сведения см. в разделе Удовлетворенные цели - моделирование потребностей.

    Удовлетворенный

    Не обнаруживается

    Тестовый случай удовлетворяет цели покрытия модели. Однако цель испытания не обнаруживается ни в одном месте обнаружения.

    Удовлетворенный

    Нерешенный

    Тестовый случай удовлетворяет цели покрытия модели. Программное обеспечение не может показать влияние цели покрытия модели на дочерние блоки.

    Невыполнимый

    Не обнаруживается

    Цель испытания является неудовлетворительной и не обнаруживаемой ни в одном месте обнаружения.

    Нерешенный

    Нерешенный

    Цель теста не определена, и программное обеспечение не может показать ее влияние на дочерние блоки.

  • Файл данных Simulink Design Verifier хранит состояние обнаруживаемости и сайт обнаружения для целей покрытия модели. Дополнительные сведения см. в разделе Файлы данных Simulink Design Verifier.

Настройка сайтов обнаружения с использованием протоколированных сигналов с тестовыми точками

Если какой-либо сигнал помечен как записанный в журнале сигнал с тестовой точкой, расширенный анализ MCDC будет определять приоритеты таких сигналов, как участки обнаружения для тестовых блоков, где это возможно. Например, рассмотрим модель, показанную ниже:

При выводе Min блок в качестве зарегистрированного сигнала с тестовой точкой, узел обнаружения для блока коммутатора является выходным портом минимального блока. В противном случае это будет выход блока насыщения.

portHandle_MinBlk = get_param('model/Min', 'PortHandles’);
set_param(portHandle_MinBlk.Outport, 'TestPoint', 'on’);
set_param(portHandle_MinBlk.Outport, 'DataLogging', 'on’);

Дополнительные сведения о тестовых точках см. в разделе Настройка сигналов как тестовых точек. Для получения информации о регистрации сигналов см. раздел Конфигурирование сигналов для регистрации.

Настройка дополнительных параметров для расширенного анализа MCDC

Чтобы проанализировать модель с более строгими условиями незамаскирования, включите параметр Использовать условия строгого распространения. Эта опция доступна в диалоговом окне «Параметры конфигурации» на панели «Design Verifier > Test Generation» в разделе «Дополнительные параметры».

Программное обеспечение оценивает более строгие незамаскированные условия для анализа влияния на тестовый блок из нисходящих блоков. Например:

  • Если модель состоит из атомной подсистемы (Atomic Subsystem) с опцией упаковки функции (Function packaging), которая имеет значение Auto или Inline.

    Рассмотрим модель, состоящую из блоков коммутаторов и атомных подсистем. Опция упаковки функций имеет значение Auto и включите параметр Использовать строгие условия распространения. Влияние тестового блока Switch обнаруживается в точке обнаружения Out1.

    При анализе модели с опцией Использовать условия строгого распространения (Use strict propagation conditions), для которой установлено значение Off, программное обеспечение анализирует модель до тех пор, пока эффект тестового блока коммутатора не достигнет атомной подсистемы. Атомная подсистема является точкой обнаружения.

  • Если модель состоит из блоков, таких как Gain или Product, для опции Saturate on integer overflow установлено значение On.

Проверка улучшенных целей MCDC с помощью модельного среза

Можно проанализировать расширенные цели MCDC и их влияние на модель с помощью инструмента «Срезание модели». В окне Результаты (Results) используйте ссылку Проверить (Inspect) справа от удовлетворенных и обнаруживаемых целей.

Также можно нажать кнопку «Проверить с помощью среза» на вкладке «Проверка проекта».

После запуска программы Model Slicer инструмент устанавливает входные данные на основе значений тестового случая, относящихся к цели, сгенерированной программой Simulink Design Verifier, и шагов к времени наблюдения, зарегистрированного в системе. sldvData. Затем модуль Model Slicer добавляет наблюдаемый объект модели в качестве начальной точки и показывает его влияние на точку обнаружения, выделяя фрагмент.

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