Запустите тесты и процедуры для Polyspace Code Prover и Polyspace Code Prover Server

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

Существует два метода, которые можно использовать в выполнении процедуры тестирования:

Эти лицензии требуются, чтобы выполнять процедуру тестирования IEC Certification Kit для Polyspace Code Prover™:

  • IEC Certification Kit

  • MATLAB

  • Polyspace Code Prover

  • Polyspace Bug Finder™

Эти лицензии требуются, чтобы выполнять процедуру тестирования IEC Certification Kit для Polyspace Code Prover Server™:

  • IEC Certification Kit

  • MATLAB

  • Polyspace Code Prover Server

  • Polyspace Bug Finder Server

Выполните тесты при помощи MATLAB

Чтобы использовать MATLAB, чтобы сконфигурировать, выполнитесь, и рассмотрите тесты валидации для Polyspace Code Prover и Polyspace Code Prover Server, смотрите, Выполняют Тесты Валидации и Результаты испытаний Анализа для Polyspace Code Prover и Polyspace Code Prover Server. Этот артефакт обеспечивает:

  • Требования к программному обеспечению, чтобы выполнить процедуру тестирования

  • Шаги настройки

  • Как выполнить процедуру тестирования

  • Список сгенерированных протоколов испытаний и как рассмотреть результаты испытаний

Используйте один из этих методов, чтобы открыться, Выполняют Тесты Валидации и Результаты испытаний Анализа для Polyspace Code Prover и Polyspace Code Prover Server:

  • В панели инструментов Simulink® откройте приложение IEC Certification Kit и выберите Polyspace Code Prover из опций Run Validation Tests.

  • В Менеджере артефактов откройте Polyspace Code Prover> certkitiec_codeprover_run.mlx.

  • В matlabroot/toolbox/qualkits/iec/codeprover/, открытый certkitiec_codeprover_run.mlx.

.mlx файл открывается в MATLAB. Следуйте за рабочим процессом, чтобы сконфигурировать и выполнить процедуру тестирования и рассмотреть результаты. Где применимо, вы находите интерактивные ссылки, которые выполняют команды. Например, чтобы выполнить процедуру тестирования .bat файл, выберите ссылку (Click here to execute the command). Скрипт выполняет команду и запускает тесты.

Выполните тесты от IEC Certification Kit matlabroot/ Папка

Примечание

Эти шаги для пользователей Polyspace, которые не используют MATLAB, чтобы выполнить тест IEC Certification Kit для Polyspace Code Prover и Polyspace Code Prover Server. Шаги эквивалентны в, Выполняют Тесты Валидации и Результаты испытаний Анализа для Polyspace Code Prover и Polyspace Code Prover Server, однако, интерактивные команды MATLAB удалены.

Настройте Тесты

Прежде, чем выполнить процедуру тестирования, скопируйте matlabroot/toolbox/qualkits/iec/codeprover/ папка и sub папки к местоположению, где у вас есть доступ для записи. Вы выполняете тесты от этого местоположения.

Управление файлом лицензии

Обозначенные компьютерные лицензии (DC)

Прежде, чем выполнить процедуру тестирования, ​ вы должно скопировать лицензию MATLAB на папку лицензии Polyspace, не стирая лицензию Polyspace.

  • Для Polyspace Code Prover, копия <MATLAB install folder>\​licenses\​*.lic next to <Polyspace install folder>\​licenses\​

  • Для Polyspace Code Prover Server, копия <MATLAB install folder>\​licenses\​*.lic next to <Polyspace Server install folder>\​licenses\​

Параллельная лицензия

Лицензия MATLAB и лицензии Polyspace управляемы через сервер FLEXlm®.

Выполните тесты

Выполнить тесты:

  1. Превратитесь в matlabroot/toolbox/qualkits/iec/codeprover/tests папка.

  2. Выполните тесты с помощью шагов в платформе:

    Windows® ─ В окне команды DOS, измените директорию в текущее местоположение и выполните специфичную для продукта команду:

    • Для Polyspace Code Prover введите certkitiec_codeprover_tests.bat

    • Для Polyspace Code Prover Server введите certkitiec_codeproverserver_tests.bat

    Примечание

    Если системная переменная PATH не включает Polyspace Code Prover или исполнимую папку Polyspace Code Prover Server, ошибка polyspace-<product> not found или perl.exe is not recognized as an internal or external command может произойти. В этом случае откройте certkitiec_<product>_tests.bat и обновите путь к исполняемой папке для Продукта polyspace, который вы квалифицируете при помощи POLYSPACE_C переменная окружения. Сохраните файл.

    Исполнимые папки Polyspace по умолчанию:

    • C:\Program Files\<Polyspace_Code_Prover_root>\

    • C:\Program Files\<Polyspace_Code_Prover_Server_root>\

    Например, установите POLYSPACE_C=C:\Program Files\Polyspace\2019a\polyspace\bin).

    Linux® ─ В командном окне UNIX, измените директорию в текущее местоположение и выполните специфичную для продукта команду:

    • Для Polyspace Code Prover введите certkitiec_codeprover_tests.sh

    • Для Polyspace Code Prover Server введите certkitiec_codeproverserver_tests.sh

    Примечание

    Если системная переменная PATH не включает Polyspace Code Prover, Polyspace Code Prover Server или исполнимую директорию Perl, ошибка polyspace-<product> not found или perl: Command not found может произойти. В этом случае обновите системную переменную PATH включать исполняемые директории Perl и Продукта polyspace, который вы квалифицируете. Сохраните файл.

    Исполнимые директории Polyspace по умолчанию:

    • /usr/local/<Polyspace_Code_Prover_root>/

    • /usr/local/<Polyspace_Code_Prover_Server_root>/

    Например, выполните команду setenv PATH ${PATH}:"/usr/local/Polyspace/2019a/polyspace/bin".

  3. Следуйте инструкциям в командной строке, чтобы выполнить определенную группу тестов или всех тестов.

Примечание

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

Рассмотрите результаты испытаний (все кроме генератора отчетов)

Выполнение процедуры тестирования генерирует эти отчеты, который идентифицирует PASSED/FAILED закончитесь для каждого теста. Эти отчеты хранятся в /codeprover/outputs.

Итоговые отчеты валидации для Polyspace Code Prover включают в себя:

  • certkitiec_codeprover_qualificationreport_checks.txt, который обеспечивает результаты для тестов в тестовом наборе дефектов кода.

  • certkitiec_codeprover_qualificationreport_code-metrics.txt, который обеспечивает результаты для тестов в метрическом тестовом наборе кода.

  • certkitiec_codeprover_qualificationreport_misrac-2004.txt, который обеспечивает результаты для тестов в MISRA C:2004, кодирующем тестовый набор стандартов.

  • certkitiec_codeprover_qualificationreport_misrac-2012.txt, который обеспечивает результаты для тестов в MISRA C:2012 (Поправка 1: 2016) кодирование тестового набора стандартов.

  • certkitiec_codeprover_qualificationreport_misracpp-2008.txt, который обеспечивает результаты для тестов на C++ MISRA: 2 008 тестовых наборов стандартов кодирования.

  • certkitiec_codeprover_qualificationreport_options-api.txt, который обеспечивает результаты для тестов в тестовом наборе опций API.

  • certkitiec_codeprover_qualificationreport_programming-languages.txt, который обеспечивает результаты для тестов в тестовом наборе языков программирования.

  • certkitiec_codeprover_qualificationreport_reporting.txt, который обеспечивает результаты для тестов в тестовом наборе интерфейсов инструмента.

Итоговые отчеты валидации для Polyspace Code Prover Server включают в себя:

  • certkitiec_codeprover_server_qualificationreport_checks.txt, который обеспечивает результаты для тестов в тестовом наборе дефектов кода.

  • certkitiec_codeprover_server_qualificationreport_code-metrics.txt, который обеспечивает результаты для тестов в метрическом тестовом наборе кода.

  • certkitiec_codeprover_server_qualificationreport_misrac-2004.txt, который обеспечивает результаты для тестов в MISRA C:2004, кодирующем тестовый набор стандартов.

  • certkitiec_codeprover_server_qualificationreport_misrac-2012.txt, который обеспечивает результаты для тестов в MISRA C:2012 (Поправка 1: 2016) кодирование тестового набора стандартов.

  • certkitiec_codeprover_server_qualificationreport_misracpp-2008.txt, который обеспечивает результаты для тестов на C++ MISRA: 2 008 тестовых наборов стандартов кодирования.

  • certkitiec_codeprover_server_qualificationreport_options-api.txt, который обеспечивает результаты для тестов в тестовом наборе опций API.

  • certkitiec_codeprover_server_qualificationreport_programming-languages.txt, который обеспечивает результаты для тестов в тестовом наборе языков программирования.

  • certkitiec_codeprover_server_qualificationreport_reporting.txt, который обеспечивает результаты для тестов в тестовом наборе интерфейсов инструмента.

Рассмотреть результаты испытаний:

  1. Подтвердите, что протоколы испытаний сгенерированы без ошибок или предупреждений.

  2. Рассмотрите итоговые отчеты валидации и подтвердите, что результаты испытаний имеют PASSED состояние. Когда фактические результаты совпадают с ожидаемыми результатами, передачей тестов.

  3. Для любых тестов с FAILED состояние, вручную рассмотрите результаты испытаний, соответствующие не пройдено тестам.

    1. Получите ожидаемые результаты из REF раздел файла исходного кода сопоставлен с тестом (т.е. <IEC Code Prover Test Folder>/tests/<test suite>/*.c).

    2. Проверьте, что ожидаемые результаты совпадают с фактическим результатом, обеспеченным в любом из этих файлов:

      Для Polyspace Code Prover:

      • <IEC Code Prover Test Folder>/tests/execution-folder-code-prover/<test suite>/<test case>/Verification.log

      • <IEC Code Prover Test Folder>/tests/execution-folder-code-prover/<test suite>/<test case>/Polyspace-Doc/Results_list.txt

      Для Polyspace Code Prover Server:

      • <IEC Code Prover Test Folder>/tests/execution-folder-code-prover-server/<test suite>/<test case>/Verification.log

      • <IEC Code Prover Test Folder>/tests/execution-folder-code-prover-server/<test suite>/<test case>/Polyspace-Doc/Results_list.txt

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

    Примечание

    То, когда язык на вашем компьютере не является английским, автоматическим сравнением ожидаемых результатов против фактических результатов, может перестать работать, потому что ожидаемые результаты, которые сгенерированы MathWorks, находятся на английском языке, и ваши фактические результаты находятся на языке, заданном локально на вашем компьютере. Если это происходит, необходимо вручную рассмотреть результаты.

  4. Сконфигурируйте содержимое matlabroot/toolbox/qualkits/iec/codeprover в системе управления конфигурацией.

Рассмотрите результаты испытаний генератора отчетов

Метод для рассмотрения результатов испытаний Генератора отчетов отличается в зависимости от формата отчетов.

Когда форматом является .html, автоматическое сравнение отчетов поддерживается. Рассмотрите PASSED/FAILED закончитесь для каждого теста, как представлено в итоговом отчете валидации. Эти отчеты хранятся в /codeprover/outputs:

  • Для Polyspace Bug Finder файлом является certkitiec-code-prover-qualificationreport-reporting.txt.

  • Для Polyspace Bug Finder Server файлом является certkitiec-code-prover-server-qualificationreport-reporting.txt.

Когда форматом является .pdf и .docx, автоматизированное сравнение отчетов НЕ поддержано. Необходимо вручную сравнить фактические результаты с ожидаемыми результатами. К PASS, содержимое фактического и ожидаемых результатов должно быть равным.

Для Polyspace Code Prover:

  • Фактические результаты: <IEC Code Prover Test Folder>/tests/execution-folder-code-prover/reporting-code-prover/<test>/Polyspace-Doc/*.docx или *.pdf

  • Ожидаемые результаты: <IEC Code Prover Test Folder>/expected_results/reporting-code-prover/<test>/*.docx или *.pdf

Для Polyspace Code Prover Server:

  • Фактические результаты: <IEC Code Prover Test Folder>/tests/execution-folder-code-prover-server/reporting-code-prover-server/<test>/Polyspace-Doc/*.docx или *.pdf

  • Ожидаемые результаты: <IEC Code Prover Test Folder>/expected_results/reporting-code-prover-server/<test>/*.docx или *.pdf

Примечание

При сравнении отчетов специфичное для среды содержимое (таких как метки времени или тестовое время длительности) может отличаться между фактическим и ожидаемыми результатами.