exponenta event banner

getResults

Просмотр всех экземпляров результатов поиска ошибок или проверки кода

Описание

пример

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

Примеры

свернуть все

В этом примере показано, как считывать результаты анализа 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);

Выполнить анализ Finder™ ошибки Polyspace в демонстрационном файле 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');

В этом примере показано, как считывать результаты анализа проверки кода из 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);

Выполнение анализа Prover™ кода Polyspace в демонстрационном файле 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');

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

свернуть все

Набор результатов поиска ошибок или проверки кода, указанный как polyspace.BugFinderResults или polyspace.CodeProverResults(Средство проверки кода Polyspace) соответственно.

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

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

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

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

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

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

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

свернуть все

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

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

См. также

| (доказательство кода Polyspace)

Представлен в R2017a