Polyspace® Bug Finder™ проверяет код C/C++ на дефекты, кодируя нарушения правила или уязвимости системы обеспечения безопасности. После того, как вы запускаете анализ, вы открываете результаты в пользовательском интерфейсе Polyspace (или если вы запустили анализ в Eclipse™, результаты, открытые в Eclipse).
Чтобы выполнить шаги в этом примере, запустите Polyspace с помощью шагов в Запущенном Polyspace Bug Finder на Рабочем столе. В качестве альтернативы в пользовательском интерфейсе Polyspace, откройте результаты в качестве примера с помощью Help> Examples> Bug_Finder_Example.psprj. Если вы загрузили результаты в качестве примера ранее и внесли некоторые изменения, чтобы загрузить новую копию, выберите Help> Examples> Restore Default Examples. |
Рассмотрите каждый результат Polyspace. Найдите первопричину проблемы.
Запустите со списка результатов на панели Results List.
Если панель Results List покрывает целое окно, выберите Window> Reset Layout> Results Review.
Если вы не видите плоский список результатов, но вместо этого видите их сгруппированный из списка, выберите None.
Кликните по заголовку столбца Check, чтобы отсортировать результаты в алфавитном порядке. Выберите один из результатов Non-initialized variable.
См. исходный код на панели Source и дополнительной информации о результате на панели Result Details.
Панель Result Details также подсвечивает последовательность продвижения событий к результату. Например, для результата Non initialized variable, вы видите следующие события:
Переменная value
объявляется.
if
оператор, где value
инициализируется пропущен.
Переменная value
читается.
Вы также видите эти события, подсвеченные в синем на исходном коде. Иногда, эти события могут быть расположены далеко друг от друга в исходном коде. Кликните по событию на панели Result Details, чтобы перейти к соответствующему местоположению на исходном коде.
См.:
Если вы изучаете первопричину открытия Polyspace, можно зафиксировать код. В противном случае добавьте комментарии в свои результаты Polyspace зафиксировать код позже или выровнять по ширине результат. Можно использовать комментарии, чтобы отслеживать прогресс анализа.
Щелкните правой кнопкой по переменной value
на панели Source. Выберите Open Editor. Код открывается в текстовом редакторе. Устраните проблему. Например, можно инициализировать value
во время объявления.
int value = -1;
В качестве альтернативы, если вы не хотите фиксировать дефект сразу, присвойте состояние To investigate результату. Опционально, добавьте комментарии с дальнейшим объяснением.
Если вы присваиваете состояние No action planned, результат не появляется в последующих запусках на том же проекте.
См.:
Когда вы открываете результаты анализа Средства поиска Ошибки, вы видите плоский список дефектов, кодируя нарушения правила или другие результаты. Чтобы организовать ваш анализ, можно сузить список или результаты группы файлом или закончиться тип.
Например, вы можете:
Рассмотрите только высокие дефекты удара.
Кликните по заголовку столбца Information, чтобы отсортировать дефекты по удару. В качестве альтернативы можно отфильтровать результаты кроме дефектов высокого удара. Чтобы начать фильтровать, кликните по значку на заголовке столбца.
Рассмотрите только новые результаты начиная с последнего анализа.
На панели инструментов панели Results List нажмите кнопку New.
Рассмотрите результаты в определенных файлах или функциях.
На панели инструментов панели Results List, из списка, выбирают File.
Смотрите результаты фильтра и группы.