Запуск в R2019a, проверка кодирование стандартов включают рабочий процесс, который более прост, чем в предыдущих релизах. Например:
Можно явным образом проверять на стандарты обеспечения защиты, такие как CERT® C и ISO/IEC TS 17961.
Можно создать один допускающий повторное использование файл, описывающий настройку средства проверки для кодирования стандартов. Можно осуществить единые стандарты через проект, команду или организацию путем определения общей настройки средства проверки.
Можно создать допускающую повторное использование настройку средства проверки для всех поддерживаемые стандарты кодирования кроме CWE. См. также Проверку на Кодирование Стандартных Нарушений.
Эта тема показывает, как переместить рабочие процессы для проверки кодирующих стандартных нарушений от релизов до R2019a.
До R2019a, чтобы проверять на стандарт обеспечения защиты, такой как CERT C, CERT C++ или ISO/IEC TS 17961, вы включили дефектные средства проверки и средства проверки MISRA C®:2012, которые соответствовали правилам из стандарта.
Например, чтобы проверять на CERT C управляет только (и исключите CERT C рекомендации):
Вы включили опциям Find defects (-checkers)
и Check MISRA C:2012 (-misra3)
.
Для каждой опции вы выбрали подмножество CERT-rules
.
В R2019a можно явным образом проверять на стандарт обеспечения защиты и задать подмножество правил из стандарта.
Например, чтобы проверять на CERT C управляет только (и исключите CERT C рекомендации):
Включите опции Check SEI CERT-C (-cert-c)
.
Задайте подмножество all-rules
.
До R2019a, чтобы рассмотреть нарушения стандарта обеспечения защиты, вы использовали дефекты и нарушения MISRA C:2012, которые сопоставлены со стандартом.
Например, чтобы рассмотреть CERT C нарушения:
Вы включили столбец CERT ID в списке результатов.
Для каждого дефекта или нарушения MISRA C:2012, столбец показывает CERT C правила, которые сопоставлены с нарушением MISRA C:2012 или дефектом. Несколько CERT C правила может быть сопоставлен с одним дефектом и несколькими дефектами, могут быть сопоставлены с CERT C правило.
Вы использовали пользовательские фильтры на столбце, чтобы отобразить только определенный CERT C правила.
В R2019a, если вы явным образом проверяете на стандарт обеспечения защиты, список результатов показывает нарушения стандарта как результаты.
Например, CERT C нарушения правила появляется явным образом как результаты (вместо отображения столбца с дефектами или нарушений MISRA C:2012).
До R2019a, чтобы создать отчеты, адаптированные для:
CERT C стандарт, вы использовали шаблон SecurityCERT
.
Стандарт ISO/IEC TS 17961, вы использовали шаблон SecurityISO_17961
.
В R2019a используйте CodingStandards
обработайте по шаблону для всех стандартов кодирования.
Чтобы использовать этот шаблон, необходимо повторно выполнить анализ однажды с включенным стандартом кодирования. Если вы не хотите повторно выполнять анализ, но генерировать отчеты для стандарта кодирования, можно продолжить использовать старые шаблоны. Использовать старые шаблоны:
В окне Run Report выберите Browse.
Перейдите к deprecated
папка и выбор один из этих шаблонов: SecurityCERT_before_R2019a.rpt
и SecurityISO_17961_before_R2019a.rpt
.
Полным путем к папке является
. Здесь, polyspaceroot
\toolbox\polyspace\psrptgen\templates\bug_finder\deprecated
папка установки Polyspace®, например, polyspaceroot
C:\Program Files\Polyspace\R2019a
.
См. также Bug Finder and Code Prover report (-report-template)
.
Опции, чтобы проверять на MISRA® и правила JSF® и предопределенные подмножества правила эквивалентны в предыдущих релизах. Однако, если вы проверяете на пользовательские подмножества правил, рабочий процесс существенно отличается.
До R2019a, чтобы проверять на пользовательское подмножество правил MISRA C:2012:
Вы выбрали подмножество custom
для опции Check MISRA C:2012 (-misra3)
.
Вы нажали Edit, чтобы задать, какие правила проверять и сохранил файл.
Вы повторили этот шаг для каждого стандарта кодирования, который вы хотите проверять. Например, если вы проверяли и на MISRA C:2012 и на пользовательские правила (соглашения о присвоении имен для идентификаторов) и выбрали пользовательское подмножество правил для каждого, вы создали два файла со своими техническими требованиями правила.
В R2019a вы задаете общий файл для всех стандартов кодирования. Файл находится в формате XML и содержит технические требования правила для всех стандартов, на которые можно проверять.
Например, чтобы проверять и на MISRA C:2012 и на пользовательские правила и задать пользовательское подмножество правил для каждого:
Выберите подмножество from-file
для опций Check MISRA C:2012 (-misra3)
и Check custom rules (-custom-rules)
.
Нажмите Edit около одной из опций. На окне Findings selection задайте все правила, что вы хотите включить. Когда вы сохраняете получившийся XML-файл, файл появляется для опции Set checkers by file (-checkers-selection-file)
.
Чтобы снова использовать те же правила через несколько проектов, задайте этот XML-файл для опции Set checkers by file (-checkers-selection-file)
во всех проектах.
Можно импортировать конфигурационные файлы правила из релизов до R2019a и сохранить их как XML-файлы, которые могут использоваться в R2019a и вне. Например, чтобы импортировать MISRA C:2012 управляют конфигурационным файлом:
Выберите подмножество from-file
для опций Check MISRA C:2012 (-misra3)
и нажмите Edit.
На окне Findings selection просмотрите к конфигурационному файлу правила pre-R2019a и открытый файл.
Когда вы сохранили файл, файл автоматически становится сохраненным в новый формат XML.
Можно также импортировать несколько конфигурационных файлов правила и создать общую настройку. Например, если файлы MISRAConfiguration
и CustomRuleConfiguration
содержит настройки правила для MISRA C:2012 и пользовательских правил соответственно, чтобы создать один XML-файл, комбинирующий эти две настройки:
Переместите оба файла в одну папку.
На окне Findings selection просмотрите к папке, содержащей конфигурационные файлы правила.
Выберите оба файла и нажмите Open.
Вы видите свои выборы для MISRA C:2012 и пользовательских правил в окне Findings selection. Когда вы сохранили файл, выборы сохранены в общем XML-файле. В случае, если обе настройки правила содержат спецификацию для того же правила, последняя спецификация рассматривается.
До R2019a вы использовали CodingRules
обработайте по шаблону, чтобы сообщить о MISRA и нарушениях правила JSF.
В R2019a используйте CodingStandards
обработайте по шаблону, чтобы сообщить об этих нарушениях. Отчеты сгенерировали использование CodingStandards
шаблон содержит те же главы как отчеты, сгенерированные с CodingRules
обработайте по шаблону в предыдущих релизах.
В дополнение к MISRA и стандартам JSF, если вы также проверяете на стандарты обеспечения защиты, такие как CERT C, отчеты содержат дополнительные главы для стандартов обеспечения защиты.
Bug Finder and Code Prover report (-report-template)
| Check ISO/IEC TS 17961 (-iso-17961)
| Check SEI CERT-C (-cert-c)
| Check SEI CERT-C++ (-cert-cpp)
| Set checkers by file (-checkers-selection-file)