getResults

Просмотр всех образцов результатов Bug Finder или Code Prover

Описание

пример

resTable = getResults(resObj, content) возвращает таблицу, показывающую все результаты в Polyspace® результирующий набор, resObj. Набор результатов resObj может быть набором результатов Bug Finder, обозначенным polyspace.BugFinderResults объект или набор результатов Code Prover, обозначенный polyspace.CodeProverResults (Polyspace Code Prover) объект. Можно манипулировать таблицей, чтобы создать графики и статистику о результатах, которые вы не можете легко получить из пользовательского интерфейса.

Примеры

свернуть все

В этом примере показано, как считать результаты анализа Bug Finder из MATLAB®.

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

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

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

resObj = polyspace.BugFinderResults(userResPath);

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

resSummary = getSummary(resObj, 'defects');
resTable = getResults(resObj);

Запустите анализ Polyspace Bug Finder™ на демонстрационном файле numerical.c. Сконфигурируйте следующие опции:

  • Укажите GCC 4.9 в качестве компилятора.

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

proj = polyspace.Project

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

% Run analysis
bfStatus = proj.run('bugFinder');

% Read results
resObj = proj.Results;
bfSummary = getResults(resObj, 'readable');

В этом примере показано, как считать результаты анализа Code Prover из 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 = getSummary (resObj);
resTable = getResults (resObj);

Запустите анализ 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
resObj = proj.Results;
cpSummary = getResults(resObj, 'readable');

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

свернуть все

Набор результатов Bug Finder или Code Prover, заданный как polyspace.BugFinderResults или polyspace.CodeProverResults (Polyspace Code Prover) объект соответственно.

Объем информации для каждого результата. Если вы задаете '', вся информация включена. Если вы задаете 'readable', следующая информация не включена:

  • ID: Уникальный номер для результата для текущего анализа.

  • Группа: Дефектные группы, MISRA C:2012 группы и т.д.

  • Статус, серьезность, комментарий: информация, которую вы вводите о результате.

Если этот аргумент не задан, включается полная таблица.

См. раздел Экспорт результатов анализа Polyspace.

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

свернуть все

Таблица, показывающая все результаты одного анализа Bug Finder или Code Prover. Для каждого результата таблица имеет такие сведения, как файл, семейство и так далее. Если конкретная информация недоступна для результата, запись в таблице утверждает <undefined>.

Для получения дополнительной информации о:

См. также

| (Polyspace Code Prover)

Введенный в R2017a