getSummary

Класс: полипробел. CodeProverResults
Пакет: полипробел

Просмотрите количество проверок на этапе выполнения, организованных цветом и файлом

Синтаксис

resObj.getSummary(resultsType)

Описание

resSummary = resObj.getSummary(resultsType) возвращает распределение результатов типа resultsType в наборе результатов Программы автоматического доказательства Кода, обозначенном polyspace.CodeProverResults объект resObj. Например, если вы принимаете решение видеть проверки на этапе выполнения, вы видите, сколько красных, оранжевых, серых и зеленых проверок присутствует в каждом файле.

Входные параметры

развернуть все

Тип результата, заданного как вектор символов.

ЗаписьЗначение
'runtime'Проверки на ошибки времени выполнения.
'misraC'Правила MISRA C®:2004.
'misraCAGC'MISRA C:2004 управляет для сгенерированного кода.
'misraCPP'Правила MISRA® C ++.
'misraC2012'Правила MISRA C:2012.
'jsf'Правила JSF® C ++.
'metrics'Метрики сложности кода.
'customRules'Пользовательские правила, осуществляющие соглашения о присвоении имен для идентификаторов.

Выходные аргументы

развернуть все

Распределение проверок на этапе выполнения цветом проверки и файлом, заданным как таблица. Например, извлечение таблицы выглядит так:

ФайлДоказанныйЗеленыйКрасныйСерыйОранжевый
file1.c92.0%87328
file2.c97.7%41011

Приведенная выше таблица показывает тот file1.c имеет:

Для получения дополнительной информации о таблицах MATLAB® см. Таблицы (MATLAB).

Примеры

развернуть все

В этом примере показано, как считать результаты анализа Программы автоматического доказательства Кода из MATLAB.

Скопируйте демонстрационный набор результатов во временную папку.

resPath = fullfile(polyspaceroot,'polyspace','examples','cxx','Code_Prover_Example', ...
'Module_1','CP_Result');
userResPath = tempname;
copyfile(resPath,userResPath);

Создайте объект результатов.

resObj = polyspace.CodeProverResults(userResPath);

Считайте результаты в таблицы MATLAB с помощью объекта.

resSummary = resObj.getSummary('runtime');
resTable = resObj.getResults();

Запустите анализ Polyspace® Code Prover™ демонстрационного файла single_file_analysis.c. Сконфигурируйте эти опции:

  • Задайте GCC 4.9 как свой компилятор.

  • Сохраните результаты в results подпапка текущей рабочей папки.

  • Укажите что main функция должна быть сгенерирована, если она не существует в исходном коде.

proj = polyspace.Project

% Configure analysis
proj.Configuration.Sources = {fullfile(polyspaceroot, 'polyspace', 'examples',...
    'cxx', 'Code_Prover_Example', 'sources', 'single_file_analysis.c')};
proj.Configuration.TargetCompiler.Compiler = 'gnu4.9';
proj.Configuration.ResultsDir = fullfile(pwd,'results');
proj.Configuration.CodeProverVerification.MainGenerator = true;


% Run analysis
cpStatus = proj.run('codeProver');

% Read results
cpSummary = proj.Results.getResults('readable');

Введенный в R2017a