Polyspace®代码验证™服务器™证明在C / C ++代码不存在的运行时错误的,然后上传到发现的web接口,用于代码评审。
您可以作为持续集成的一部分运行代码验证程序。设置脚本,以定期或基于新的代码提交运行代码验证程序分析。这些脚本可以将分析结果上传到Polyspace web界面进行审查,也可以向源文件的所有者发送电子邮件,告知Polyspace的发现。所有者可以打开web界面,只查看提交的新发现,然后修复或证明问题。
在一个典型的项目或团队,Polyspace代码验证服务器定期在一些测试服务器上运行并上传结果以供检查。团队中的每个开发人员和质量工程师都有一个Polyspace代码证明器访问™许可在web界面中查看结果以进行调查和修复bug。
要在服务器上运行守则证实者分析和审查的结果多空间码验证访问web接口,执行这个一次性设置:
要运行分析,请安装Polyspace代码验证服务器产品。
要上传的结果,建立所需的组件来承载的Web界面多空间码验证访问。
要查看上传的结果,您和审查结果的每个开发人员必须有一个多空间码验证访问执照。
看到安装Polyspace Server和Access产品s manbetx 845。
要检查是否Polyspace代码验证服务器安装:
打开命令窗口。导航
。这里,polyspaceserverroot
\ polyspace \ bin
是Polyspace代码验证服务器安装文件夹,例如,polyspaceserverroot
C:\ Program Files文件\ Polyspace服务器\R2020a
。另请参阅安装文件夹。
输入:
polyspace码,证明服务器-help |
您应该看到代码验证程序分析允许的选项列表。
检查Polyspace网页界面是否已设置好,以便上传:
再次浏览
。polyspaceserverroot
\ polyspace \ bin
输入:
polyspace访问-host主机名-port端口号 - 创建项目testProject |
这里,
托管的服务器的名称是多空间码验证访问web服务器。对于本地托管的服务器,请使用主机名
本地主机
。
I是服务器的可选端口号。如果忽略端口号,portNumber
9443
使用。
如果安装完成,称为项目testProject
在Polyspace Web界面创建。
每次使用时,系统都会提示您输入登录名和密码polyspace-access
命令。为了避免输入登录信息每次提供的登录名和密码与命令的加密版本。要创建一个加密的密码,请输入:
polyspace-access -encrypt-password |
输入您的登录名和密码。复制加密的密码并使用-encrypted密码
使用polyspace-access
命令。
在web浏览器中,打开这个URL:
https://开头主机名:portNumber/metrics/index.html
主机名
和portNumber
是上一步的主机名和端口号。在PROJECT EXPLORER在Polyspace web接口的窗格中,您应该看到新创建的项目testProject
。
运行代码证明器,在您的操作系统,打开命令窗口。
要运行代码证明者分析,使用polyspace码,证明服务器
命令。
要上传结果的PolySpace Web界面,使用polyspace-access
命令。
为了避免输入完整的路径命令,添加路径
到polyspaceserverroot
\ polyspace \ bin路径
操作系统上的环境变量。
尝试在提供您的Polyspace安装示例文件的命令。
复制示例源文件
到具有写权限的另一个文件夹。在命令行中导航到此文件夹。polyspaceserverroot
\ polyspace \例子\ CXX \ Code_Prover_Example \源
输入:
polyspace-code-prover-server -sources example.c,single_file_analysis.c -I。主发电机-results-dir。polyspace-access主机主机名-港口portNumber登录用户名-encrypted密码松材线虫病- 创建项目testProject polyspace访问-host主机名-港口portNumber登录用户名-encrypted密码松材线虫病上传。-项目myFirstProject -父项目testProject |
这里,
你的登入名称及用户名
是你以前创建的加密密码。看到检查Polyspace安装。松材线虫病
刷新Polyspace web接口。您可以在下面看到新上传的结果testProject
在文件夹PROJECT EXPLORER窗格。
要查看该项目的结果,请点击评论。欲了解更多信息,请参阅Polyspace代码验证器访问文档。您还可以使用按钮位于Polyspace访问接口的右上角。
对于一个代码证明器分析可用选项的完整列表,请参阅分析选项。要在帮助浏览器中打开代码验证器文档,请输入:
polyspace-code-prover-server医生
要运行分析,而不是在命令行中键入的命令,你可以使用脚本。该脚本可以执行每个要添加或修改的源文件的时间。
一个示例窗®批处理文件如下所示。这里,Polyspace安装的路径在脚本中指定。要使用此脚本,请使用replacepolyspaceserverroot
与您的安装路径。您必须已经生成了用于脚本的加密密码。看到检查Polyspace安装。
回波断设定POLYSPACE_PATH = polyspaceserverroot \ polyspace \仓组LOGIN = -host主机名-port PORTNUMBER -login用户名-encrypted密码松材线虫病“%POLYSPACE_PATH%\ polyspace码-证明方服务器” -sources example.c,single_file_analysis.c -I。^ - 主发电机 - 结果-DIR。“%POLYSPACE_PATH%\ polyspace访问” LOGIN%-create%项目testProject “%POLYSPACE_PATH%\ polyspace访问” LOGIN%-upload%。- 项目myFirstProject -parent项目testProject暂停 |
一个示例Linux®外壳脚本如下所示。
POLYSPACE_PATH=polyspaceserverroot/polyspace/bin LOGIN=-主机主机名-端口portNumber -login用户名-encrypted密码松材线虫病${POLYSPACE_PATH}/polyspace-code-prover-server -sources example.c,single_file_analysis.c -I .\ -main-generator -results-dir。${POLYSPACE_PATH}/polyspace-access $LOGIN -create-project testProject ${POLYSPACE_PATH}/polyspace-access $LOGIN -upload。-项目myFirstProject -父项目testProject |
相反,上市启动脚本中的源文件和分析选项,你可以在单独的文本文件中列出。
通过使用该选项指定文本文件列出源-sources列表文件
。
使用该选项指定列出分析选项的文本文件选项文件
。
通过从启动脚本中删除源文件和分析选项规范,您可以根据需要使用新的代码提交来修改这些规范,同时保持启动脚本不变。
考虑前面的示例脚本。您可以修改polyspace码,证明服务器
命令使用带有源和选项的文本文件。而不是:
polyspace-code-prover-server -sources example.c,single_file_analysis.c -I。主发电机-results-dir。 |
使用:
polyspace-code- proverr -server -source -list-file sources.txt -options-file polyspace_options .txt -results-dir。 |
这里:
sources.txt
列出源文件:
example.c single_file_analysis.c
polyspace_opts.txt
列出单独行分析选项:
-一世 。- 主要发电机
通常,您的源文件是在一个构建命令(makefile)中指定的。您可以通过跟踪build命令来创建源规范列表,而不是直接指定源文件。看到polyspace-configure
。
在一个典型的持续集成的工作流程,运行执行这些步骤的脚本:
提取您的构建命令Polyspace选项。
举例来说,如果你使用的makefile来构建你的源代码,你可以提取makefile文件分析选项。
polyspace - 配置 - 输出 - 选项 - 文件compile_opts使 |
也可以看看:
使用前面创建的选项文件运行分析。附加第二个选项文件,该文件包含分析所需的其余选项。
polyspace码,证明服务器-options文件compile_opts -options文件run_opts |
上传结果到多空间码验证访问。
polyspace-access登录-uploadresultsFolder-项目projName-parent项目parentProjName |
这里,
是的选项组合的要求与被托管的Web服务器进行通信多空间码验证访问:登录
主机主机名-港口portNumber登录用户名-encrypted密码松材线虫病 |
是包含Polyspace结果的文件夹。resultsFolder
和projName
是该项目的名称和父文件夹,因为它们将出现在多空间码验证访问web界面。parentProjName
或者,发送电子邮件通知开发人员从他们的代码提交新的成果。邮件中包含的链接在结果附件多空间码验证访问web界面。
见执行这些步骤中的脚本实例使用Jenkins进行Polyspace分析的示例脚本。
polyspace-access
|polyspace码,证明服务器