Рассмотрите результаты Polyspace Bug Finder в пользовательском интерфейсе Polyspace

Polyspace® Bug Finder™ проверяет код C/C++ на дефекты, кодируя нарушения правила или уязвимости системы обеспечения безопасности. После того, как вы запускаете анализ, вы открываете результаты в пользовательском интерфейсе Polyspace (или если вы запустили анализ в Eclipse™, результаты, открытые в Eclipse).

Эта тема показывает, как рассмотреть некоторые демонстрационные результаты в пользовательском интерфейсе Polyspace. Пользовательский интерфейс Polyspace доступен с десктопными решениями, Polyspace Bug Finder и Polyspace Code Prover™.

Чтобы выполнить шаги в этом примере, запустите 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;
Если вы повторно выполняете анализ, вы не видите дефект Non-initialized variable.

В качестве альтернативы, если вы не хотите фиксировать дефект сразу, присвойте состояние To investigate результату. Опционально, добавьте комментарии с дальнейшим объяснением.

Если вы присваиваете состояние No action planned, результат не появляется в последующих запусках на том же проекте.

Дополнительная информация

См.:

Управляйте результатами

Когда вы открываете результаты анализа Bug Finder, вы видите плоский список дефектов, кодируя нарушения правила или другие результаты. Чтобы организовать ваш анализ, можно сузить список или результаты группы файлом или закончиться тип.

Например, вы можете:

  • Рассмотрите только высокие дефекты удара.

    Кликните по заголовку столбца Information, чтобы отсортировать дефекты по удару. В качестве альтернативы можно отфильтровать результаты кроме дефектов высокого удара. Чтобы начать фильтровать, кликните по значку на заголовке столбца.

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

    На панели инструментов панели Results List нажмите кнопку New.

  • Рассмотрите результаты в определенных файлах или функциях.

    На панели инструментов панели Results List, из списка, выбирают File.

Дополнительная информация

Смотрите результаты фильтра и группы в пользовательском интерфейсе рабочего стола Polyspace.