Для моделирования программного обеспечения в цикле (SIL) или процессора в цикле (PIL) можно настроить анализ покрытия кода сторонних производителей с помощью API командной строки.
Для BullseyCoverage можно использовать следующий рабочий процесс:
Используя get_paramизвлеките объект, содержащий настройки покрытия для текущей модели. Например:
covSettings = get_param(gcs, 'CodeCoverageSettings')
covSettings =
CodeCoverageSettings with properties:
TopModelCoverage: 'off'
ReferencedModelCoverage: 'off'
CoverageTool: 'None'
Собственность TopModelCoverage определяет, генерирует ли программное обеспечение данные покрытия кода только для верхней модели, в то время как ReferencedModelCoverage определяет, генерирует ли программное обеспечение данные покрытия для моделей, на которые ссылается верхняя модель. Если ни одно из свойств не является 'on'генератор кода не создает данные покрытия кода во время моделирования SIL или PIL.
При сохранении модели свойства TopModelCoverage, ReferencedModelCoverage, и CoverageTool также сохраняются.
Проверьте класс covSettings.
class(covSettings)
ans =
'coder.coverage.CodeCoverageSettings'
Включите анализ покрытия кода BullseyCoverage для модели высшего уровня и ссылочных моделей.
covSettings.TopModelCoverage='on'; covSettings.ReferencedModelCoverage='on'; covSettings.CoverageTool='BullseyeCoverage';
CoverageTool кому 'LDRA Testbed'.Используя set_paramпримените новые настройки покрытия к модели.
set_param(gcs,'CodeCoverageSettings', covSettings);Если установлен сторонний инструмент покрытия кода, укажите путь установки.
coder.coverage.BullseyeCoverage.setPath('C:\Program Files\BullseyeCoverage')Для теста LDRA используйте coder.coverage.LDRA.setPath('C:\...).
Убедитесь, что путь сохранен как настройка.
coder.coverage.BullseyeCoverage.getPath
Для теста LDRA используйте coder.coverage.LDRA.getPath.
Если в модели используется набор конфигурации, не присоединенный к модели, например ссылка на конфигурацию, то кнопка Настроить (Configure) в диалоговом окне Параметры конфигурации (Configuration Parameters) становится недоступной. Невозможно открыть диалоговое окно Code Coverage Settings (Параметры покрытия кода), и необходимо использовать команды line для задания параметров покрытия кода.
Чтобы настроить анализ покрытия кода стороннего производителя для модели, использующей ссылку на конфигурацию, выполните следующие действия.
Получите активный набор конфигурации из модели.
cs = getActiveConfigSet(gcs)
Получение текущих параметров покрытия кода.
covSettings = get_param(cs, 'CodeCoverageSettings')Укажите требуемые параметры покрытия кода. Например:
covSettings.TopModelCoverage = 'on'; covSettings.ReferencedModelCoverage='on'; covSettings.CoverageTool='BullseyeCoverage';
Получение набора конфигурации, указанного ссылкой на конфигурацию.
csBase = cs.getRefConfigSet
Примените требуемые параметры покрытия кода к указанному набору конфигурации.
set_param(csBase, 'CodeCoverageSettings', covSettings);