Советы и ограничения

Сборка модели и Блоки SIL/PIL, Не Поддержанные

Покрытие кода не поддерживает:

  • Процесс сборки модели, например, Ctrl+B команда.

  • SIL или блоки PIL.

Настройки покрытия кода проигнорированы Ctrl+B команда и SIL или блоки PIL.

Лицензия BullseyeCoverage ожидает

Когда вы создаете свою модель, вам придется ожидать лицензии BullseyeCoverage. Если вы хотите видеть информацию об ожидании, прежде чем вы создадите свою модель в диалоговом окне Configuration Parameters, выберите Verbose build.

Текущей работающей Папкой не Может быть Путь UNC

Если ваш MATLAB® текущая рабочая папка является путем к Универсальному соглашению о присвоении имен (UNC), сбоями покрытия кода.

Символы в matlabroot и путь к файлу

Если matlabroot или путь к вашим сгенерированным файлам содержит пробел или . (период) символ, покрытие кода может перестать работать.

Заголовочные файлы с идентичными именами

Рассмотрите модель, которая сконфигурирована для покрытия кода LDRA Testbed®. Во время процесса сборки, если программное обеспечение обнаруживает два заголовочных файла с тем же именем в папке для сгенерированного кода, программное обеспечение генерирует ошибку.

Покрытие кода для исходных файлов в разделяемых служебных папках

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

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

Поведение BullseyeCoverage со встроенными макросами

Инструмент BullseyeCoverage, по умолчанию, не обеспечивает данные о покрытии кода для встроенных макросов.

Например, если модель генерирует файл slprj/ert/_sharedutils/rt_SATURATE.h это содержит макрос

#define rt_SATURATE(sig,ll,ul) (((sig) >= (ul)) ? (ul) : (((sig) <= (ll)) ? (ll) : (sig)) )

и макрос находится в sat_ert_rtw/sat.c, затем отчет покрытия обеспечивает измерение для sat.c, но никакие данные о покрытии для условий в макро-rt_SATURATE.

Сконфигурировать инструмент BullseyeCoverage, чтобы обеспечить данные о покрытии кода для встроенных макросов:

  1. Откройте браузер BullseyeCoverage.

  2. Выберите Tools> Options, чтобы открыть Окно параметров.

  3. На вкладке Build установите флажок Instrument macro expansions.

  4. Нажмите OK.

  5. Повторно выполните свою симуляцию.

В качестве альтернативы можно добавить текст -macro к BullseyeCoverage конфигурационный файл. Для получения дополнительной информации перейдите к www.bullseye.com / справка.

SIL и PIL симуляции с открытым испытательным стендом LDRA

Если вы включаете покрытие кода с инструментом LDRA Testbed®, необходимо проверить, что графический интерфейс пользователя Испытательного стенда LDRA не открыт, когда вы запускаете свой SIL или PIL симуляцию. Если имя набора в графический интерфейсе пользователя Испытательного стенда LDRA отличается от имени набора, используемого SIL или PIL симуляцией, SIL или сбоями PIL симуляции.

Незначительный SIL и различия PIL для испытательного стенда LDRA

Целевой API возможности соединения поддерживает покрытие кода с Испытательным стендом LDRA для топ-модели и блока Model PIL.

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

Нулевое покрытие PIL аннотации испытательного стенда LDRA

Для PIL симуляции с заданным покрытием кода Испытательного стенда LDRA могут быть некоторые исходные файлы, где записанное покрытие является нулем. В этом случае программное обеспечение предоставляет итоговую информацию, указывающую что:

  • Существует покрытие, чтобы измериться.

  • Покрытие является нулем.

Вы не видите информации для отдельных зондов на каждой линии. Отображенная итоговая информация имеет связанную подсказку аннотации:

0 out of N coverage probes were exercised (detailed breakdown unavailable)

Поддержка PIL BullseyeCoverage

Покрытие кода с BullseyeCoverage доступно топ-модели и блоку Model PIL, если ваше приложение PIL может записать непосредственно в файловую систему хоста. Ваша цель для приложения PIL должна обеспечить fopen и fread доступ к файловой системе хоста.

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

Измените унаследованный код

Если вы изменяете унаследованный код и повторно выполняете SIL или PIL симуляцию, унаследованный код перекомпилирован. Однако код из модели может быть актуальным. В этом случае отчет генерации кода не обновляется и не показывает модифицированный унаследованный код. Вместо этого информация о покрытии кода для модифицированного унаследованного кода отображена со ссылкой на исходный унаследованный код. Необходимо регенерировать отчет. Для получения дополнительной информации смотрите Ограничение (Simulink Coder).

Похожие темы