Руководство по быстрому началу работы для сервера Polyspace и доступа к продуктам

Чтобы постараться не находить ошибки поздно в процессе разработки, запустите статический анализ при помощи продуктов Polyspace®.

  • Polyspace Bug Finder™ проверяет код C/C++ на ошибки, кодируя стандартные нарушения, уязвимости системы обеспечения безопасности и другие проблемы.

  • Polyspace Code Prover™ выполняет исчерпывающие проверки для деления нулем, переполнением, доступ к массиву за пределы и другие общие типы ошибок времени выполнения.

См. также Выбирают Between Polyspace Bug Finder и Polyspace Code Prover.

Если вы регулярно запускаете средства проверки Polyspace как часть непрерывного интегрирования, можно защитить от регрессий от новых регистраций кода. Чтобы запустить Polyspace на сервере во время непрерывного интегрирования, используйте Polyspace Bug Finder Server и Polyspace Code Prover Server. Чтобы разместить результаты анализа Polyspace, используйте Polyspace Bug Finder Access и Polyspace Code Prover Access.

Типичный рабочий процесс выглядит так фигура.

Установка

Предпосылки

В зависимости от потребностей вашего проекта, команды или организации, вы решили получить определенное число лицензий Сервера Polyspace и Polyspace доступ к продуктам. Это руководство помогает вам установить отдельные экземпляры этих продуктов на машине.

Установите сервер Polyspace

Чтобы установить Серверные продукты Polyspace, загрузите и запустите установщика MathWorks. Введите лицензию на Серверные продукты Polyspace (или запросите пробную лицензию). См. также Запрос Пробная лицензия. Серверные продукты Polyspace установлены в отдельной папке от других продуктов MathWorks®. См. также Сервер Polyspace Установки и доступ к продуктам.

Установите Polyspace доступ

Прежде, чем установить Polyspace доступ, рассмотрите количество пользователей, которые потенциально рассмотрят результаты Polyspace одновременно. Системные требования зависят от количества одновременных рецензентов. См. также Системные требования для Polyspace доступ (к Polyspace Code Prover Access).

Polyspace доступ состоит из нескольких сервисов: база данных, чтобы управлять результатами, диспетчер пользователей, чтобы обработать пользовательское имя для входа в систему, веб-сервер, чтобы показать результаты и шлюз, чтобы обработать коммуникации. Сервисы развертываются в контейнерах Докера. Можно запустить, сервисы от общего интерфейса вызвали Кластерный Оператор.

Устанавливать Polyspace доступ:

  • Загрузите инсталлятор как zip-файл.

  • Разархивируйте файл и запустите Кластерный Оператор. От интерфейса Cluster Operator запустите различные сервисы. Смотрите Polyspace Установки доступ (к Polyspace Code Prover Access).

После установки, чтобы видеть загруженные результаты, вы и другие рецензенты можете войти в систему:

https://hostName:portNumber/metrics/index.html

Подготовка анализа Polyspace

Предпосылки

Вы или ваш отдел ИТ в вашей организации должны установить необходимое количество Сервера Polyspace и Polyspace доступ к экземплярам. Это руководство помогает вам настроить анализ Polyspace как часть непрерывного интегрирования с помощью одного экземпляра Сервера Polyspace и Polyspace доступ.

Чтобы проверять, что ваш Сервер Polyspace и Polyspace доступ к установкам могут связаться друг с другом, смотрите Установку Polyspace Проверки.

Запустите сервер Polyspace и загрузите результаты на Polyspace доступ

Можно запустить Серверные продукты Polyspace в командной строке операционной системы:

  • Чтобы запустить анализ, используйте polyspace-bug-finder-server и polyspace-code-prover-server исполняемые файлы.

  • Чтобы загрузить результаты анализа, используйте polyspace-access исполняемый файл. Можно также использовать этот исполняемый файл, чтобы экспортировать результаты Polyspace доступ как текстовые файлы для почтовых прикреплений или архивации.

Можно запустить все исполняемые файлы Polyspace от polyspace/bin подпапка папки установки Polyspace (например, /usr/local/Polyspace Server/R2020a, см. также Папку Установки). Чтобы запустить рабочий Сервер Polyspace при помощи выборки C исходные файлы и демонстрационные скрипты, см.:

Можно также предварительно сконфигурировать аналитические опции Polyspace от команды сборки (make-файл), и затем добавить второй файл опций с аналитическими техническими требованиями, такими как средства проверки. Смотрите Готовят Скрипты к Анализу Polyspace.

Если у вас есть установка десктопных решений Polyspace, можно подготовить аналитическую настройку в пользовательском интерфейсе десктопных решений. Можно затем сгенерировать файлы опций Polyspace, чтобы запуститься во время непрерывного интегрирования. Смотрите Конфигурируют Аналитические Опции Polyspace в Пользовательском интерфейсе и Генерируют Скрипты.

Включайте запуски Polyspace в непрерывное интегрирование при помощи инструментов, таких как Дженкинс

Если у вас есть рабочие скрипты, чтобы запустить анализ Polyspace, можно запустить те скрипты в предопределенных интервалах с помощью непрерывных инструментов интегрирования, таких как Дженкинс и Бамбук. В Дженкинсе можно использовать плагин Polyspace, чтобы указать на установки Polyspace и отправить уведомления по электронной почте разработчикам после анализа, на основе критериев, таких как новые дефекты.

Из интерфейса Дженкинса ищите и установите плагин Polyspace. Для быстрого запуска при использовании плагина Дженкинса и демонстрационных скриптов, смотрите плагин Polyspace репозиторий GitHub. Для полного рабочего процесса с Дженкинсом см. Демонстрационные Скрипты для Анализа Polyspace с Дженкинсом.

Создайте рабочий процесс для рецензентов результата

В зависимости от инструментов, которые вы уже используете, можно настроить удобный рабочий процесс для рецензентов результата. Например:

Рецензенты получают предупреждения для новых результатов и журнала в Polyspace доступ

Рецензенты получают индивидуально настраиваемые предупреждения по электронной почте результатами в прикреплении

  • Перед загрузкой на Polyspace доступ, с помощью -set-unassigned-findings опция polyspace-access исполняемый файл, инструмент непрерывного интегрирования (CI) присваивает владельцев новым результатам анализа на основе файла или владения компонента или другого критерии.

  • После загрузки, с помощью -export опция polyspace-access исполняемый файл, инструмент CI экспортирует результаты анализа для каждого владельца к отдельному текстовому файлу. Инструмент затем отправляет текстовый файл в почтовом прикреплении владельцу. Текстовый файл содержит результаты с соответствующими URL в интерфейсе Polyspace Access.

    Если вы используете Дженкинса в качестве своего инструмента CI, плагин Polyspace в Дженкинсе непосредственно поддерживает этот рабочий процесс. См. Демонстрационные Скрипты для Анализа Polyspace с Дженкинсом.

  • При получении электронного письма владелец открывает файл дополнительного текста, копирует URL каждого результата к их веб-браузеру и рассматривает результат.

Рецензенты открывают билеты от инструментов отслеживания ошибок

  • Рецензент, такой как инженер по качеству, рассматривает все новые результаты и создает тикеты JIRA для разработчиков. Смотрите Проблему Дорожки в Инструменте Отслеживания ошибок (Polyspace Code Prover Access).

  • Разработчики открывают каждый билет JIRA и перешли к соответствующему результату Polyspace в интерфейсе Polyspace Access.