Polyspace使用
1.使用之前的准备工作
.c.h文件分别编译通过
因为Polyspace检查与开发环境关系不大, VC工程或是CodeWarrior开发环境的工程文件不需要,只要.c文件和.h文件;
以对CSDN软件中组件进行检查为例,目录与文件如下方式整理:
CSDN总目录下包括两级目录:
CSDN_C存放待查的.c文件;
SRC存放源文件(包括CSDN软件所有的.c.h文件);
注意: 1.将所有的.h.c文件包含在一个src目录中,并且.c文件中调用到的函数的.h直接包含到该.c文件中,不能间接引用.h,不然Polyspace不能对未知函数自动打桩; 2.所有测试的目录不能有中文;
2.创建工程
运行桌面上的Polyspace R2018b
点击 “create new project”,或选择File>New Project,或点击左侧“Start a new project”
将出现如下图所示界面。
在弹出界面的“Project name”栏输入工程名称,如SAI_Polyspacetest;
去掉“Use default location”前面的勾,并在“Location”栏选择待查.c文件的路径,如E:\Polyspace\VCP\CSDN\CSDN_C;
a.使用polyspace配置模板,需勾选“Use template”;
b.通过makefile文件创建工程,需勾选“Create from build command”;
c. 用于AUTOSAR 软件组件静态分析,需勾选“Create from AUTOSAR specification”;
d.普通方式,“Use template”、“Create from build command”、“Create from AUTOSAR specification”均不勾选。(示例选择此方式)
点击“Next”按钮,出现以下界面。
点击“Browse”,选择待测c文件所在文件夹
再点击“Add Source Folders”即可将文件夹中所有的被测c文件加载
点击“Next”,出现添加头文件界面。
点击“Browse”,选择包含所有C文件和H文件夹所在的路径,再点击Add Include Folders,设置头文件目录,点击“Finish”按钮,完成工程创建。
3.配置参数
参数配置界面:如下
Target language进行以下设置:
source code language:选择源代码语言,包含有以下几种语言可供选择。
standard version:根据相应的源代码语言,选择所遵循的语言标准,其中C语言标准与C++语言标准,如下图所示。
Target Environment进行以下设置:
compiler:选择编译器
Target processor type:选择相应的处理器内核,如无对应处理器,选择mcpu…(advanced),将弹出以下界面,可自行设置,输入名称后,保存即可。
Enviroment setting:保持默认值,勾选“code from DOS or Windos file system”,不要勾选“stop analysis if a file dose not compile”。
Inputs & stubbing
Multitasking
Coding rules & code metrics
Bug finder analysis
Code prover verification:默认勾选。
variables to initialize:public
Function to call: unused
- Reporting:对生成的报告进行配置。
Run Settings
Advanced Settings
4.运行工程
点击“Run Bug Finder”按钮运行
运行完毕后,双击“BF_Result[completed]”后在弹出的报告详细界面点Reporting>Run Report >bugfinder,在Output folder中选择报告的保存路径,Output format中选择生成的报告的保存格式,点击Run Report生成报告,然后在所选择的路径下生成对应的报告。
检查完成后,在Project Browser页面双击 “CP_Result[completed]”也可出现结果详细界面,在“Result List”中可查看结果。
(1)其中绿色表示没有RTE错误,橘色表示可能存在RTE错误,红色表示一定存在RTE错误,灰色表示此处不可达代码;
(2)展开检查问题后,点击测试文件,可定位测试问题所在的代码。