В этом разделе описывается, как фильтровать, группировать и иным образом управлять результатами в пользовательском интерфейсе настольных продуктов Polyspace. Аналогичный рабочий процесс в веб-интерфейсе Polyspace Access см. в разделе.
При открытии результатов анализа Polyspace ® появляется плоский список дефектов (Bug Finder), проверок времени выполнения (Code Prover), нарушений правил кодирования или других результатов. Для организации проверки можно сузить список или сгруппировать результаты по типу файла или результата.
![]()

![]()
Можно использовать следующие способы фильтрации:
Можно просматривать только определенные типы дефектов или проверки времени выполнения.
Например, в Bug Finder можно отображать только высокоэффективные дефекты. См. Классификация дефектов по воздействию.
Можно отобразить только новые результаты, найденные с момента последнего анализа.
Можно отобразить только те результаты, которые не являются обоснованными.
Сведения об обосновании см. в разделе Результаты адресного полипространства с помощью исправлений ошибок или обоснований.
![]()

![]()
Можно фильтровать с помощью столбцов на панели Список результатов (Results List). Щелкните
значок на заголовках столбцов, чтобы увидеть доступные фильтры. Для получения информации о столбцах см.:
Результаты, найденные с момента последнего анализа, отображаются звездочкой (*) рядом с ними. Чтобы просмотреть только эти результаты с момента последнего анализа, нажмите кнопку Создать (New). Обратите внимание, что при выполнении анализа в командной строке (или даже при первом выполнении анализа в интерфейсе пользователя) необходимо сначала импортировать данные из предыдущего анализа, чтобы создать опорную структуру для кнопки Создать (New). См. раздел Импорт сведений проверки из предыдущего анализа полиспейса.
Если фильтрация по точному содержимому столбца не требуется, можно использовать пользовательский фильтр. Например, необходимо отфильтровать подпапки определенной папки. Вместо фильтрации каждой подпапки в столбце Папка (Folder) выберите в раскрывающемся списке Фильтр (Custom). Укажите имя корневой папки для doesn’t contain фильтр.
Для пользовательского фильтра можно использовать подстановочные символы. Групповой символ ? представляет 0 или 1 символ и * представляет 0 или более символов.
Если фильтры применяются таким образом, они переносятся на следующий анализ. Можно также присвоить имя и сохранить подмножество фильтров для использования в нескольких проектах. Чтобы применить именованный набор фильтров, выберите этот набор фильтров из списка Все результаты. Чтобы создать новую запись в этом списке, выберите Сервис > Настройки и создайте собственный набор фильтров на вкладке Область обзора.
![]()
![]()

![]()
Для фильтрации результатов можно щелкнуть графики на панели Панель мониторинга (Dashboard). Например:
Чтобы увидеть только высокоэффективные дефекты в Bug Finder, щелкните соответствующий раздел диаграммы распределения дефектов по ударам.
Для просмотра только красных чеков в программе Code Prover щелкните соответствующий раздел схемы распределения Check.
Чтобы снова просмотреть все результаты, щелкните ссылку Просмотр всех результатов в этой области.
![]()
Источник оранжевого цвета может вызвать несколько проверок оранжевого цвета в средстве проверки кода. Можно просмотреть все оранжевые чеки из одного источника и просмотреть их вместе.
Например, в этом коде неизвестное значение input может вызвать переполнение и деление на ноль. Переменная input оранжевый источник, который вызывает две оранжевые проверки.
void func (int input) {
int val1;
double val2;
val1 = input++;
val2 = 1.0/input;
}Для начала выберите «Окно» > «Показать/скрыть вид» > «Оранжевые источники». Вы видите список оранжевых источников. Выберите оранжевый источник, чтобы увидеть все оранжевые чеки, поступающие из этого источника.
![]()

![]()
![]()

![]()
В заголовке Список результатов (Results List) отображается количество результатов, отображаемых в формате Показать (Show). x/y, например, показывая 100/250. Щелкните раскрывающийся список рядом с этим номером, чтобы увидеть фильтры, которые в данный момент активны. Можно также удалить активные фильтры из этого раскрывающегося списка (все, кроме именованного набора фильтров, выбранного из раскрывающегося списка Все результаты).
Появится следующая информация о фильтрах:
Обзор области: Если выбрать именованный набор фильтров из раскрывающегося списка Все результаты, вы увидите этот набор фильтров.
Только новые результаты: Если кнопка Создать используется только для просмотра новых результатов, этот фильтр будет включен.
Отфильтрованные результаты: количество результатов, отфильтрованных в интерфейсе пользователя Polyspace (любым способом: список результатов, панель мониторинга или оранжевые источники).
Скрытые результаты - количество результатов, скрытых с помощью аннотаций кода. Чтобы показать эти результаты, снимите флажок Скрыть результаты, выровненные в коде.
Сведения о скрытии результатов с помощью примечаний кода см. в разделе Результаты адресного полипространства с помощью исправлений ошибок или обоснований.
Столбцы с активными фильтрами: отображаются столбцы на панели Список результатов (Results List) (или столбцы, соответствующие графам на панели Панель мониторинга (Dashboard)), которые использовались для фильтрации результатов.
![]()
На панели Список результатов (Results List) в
списке выберите опцию, например группирование по файлу. Можно также щелкнуть заголовок столбца для сортировки содержимого столбца в алфавитном порядке.
![]()

![]()
Доступны следующие варианты группирования:
Нет: показывает результаты без группировки.
Семейство: отображение результатов, сгруппированных по типам результатов.
Результаты организованы по типу: проверки (Code Prover), дефекты (Bug Finder), глобальные переменные (Code Prover), нарушения правил кодирования, метрики кода. Внутри каждого типа они группируются далее.
Дефекты (Bug Finder) организованы по группам дефектов. Дополнительные сведения о группах см. в разделе Дефекты.
Проверки (Code Prover) группируются по цвету. В пределах каждого цвета проверки организованы по группам проверок. Дополнительные сведения о группах см. в разделе Проверки времени выполнения.
Глобальные переменные (Code Prover) группируются по их использованию. Дополнительные сведения см. в разделе Глобальные переменные.
Нарушения правил кодирования группируются по типу правила кодирования. Дополнительные сведения см. в разделе Стандарты кодирования.
Метрики кода сгруппированы по области метрики. Дополнительные сведения см. в разделе Метрики кода.
Файл: Показать результаты, сгруппированные по файлу.
В каждом файле результаты группируются по функциям. Результаты, не связанные с определенной функцией, группируются в разделе Область файла (File Scope).
В программе проверки кода имя файла или функции показывает наихудший цвет проверки в файле или функции. Серьезность цвета чека уменьшается в порядке: красный, серый, оранжевый, зеленый.
Класс (только для кода C++): показывает результаты, сгруппированные по классам.
В каждом классе результаты группируются по методу. Результаты, не связанные с определенным классом, группируются в глобальную область.