主要内容

运行Polyspace代码验证程序上传结果到Web界面

Polyspace®代码验证程序™ 服务器™证明C/ c++代码中没有运行时错误,然后将发现上传到web界面以进行代码检查。

您可以作为持续集成的一部分运行代码验证程序。设置定期或基于新代码提交运行代码验证程序分析的脚本。这些脚本可以将分析结果上传到Polyspace web界面中供查看,还可以选择向具有Polyspace结果的源文件所有者发送电子邮件。所有者可以打开web界面,仅查看其提交的新发现,然后修复或证明问题。

在一个典型的项目或团队中,Polyspace代码验证服务器定期在一些测试服务器上运行,并上传结果以供查看。团队中的每个开发人员和质量工程师都有一个Polyspace代码验证访问™在web界面中查看结果以进行调查和错误修复的许可证。

先决条件

要在服务器上运行代码验证器分析并查看多空间码验证访问web界面,执行此一次性设置:

  • 要运行分析,请安装Polyspace代码验证服务器产品

  • 要上传结果,需要设置的组件主机的web界面多空间码验证访问

  • 要查看上传的结果,您和每个检查结果的开发人员必须有一个多空间码验证访问许可证。

看到安装Polyspace服务器和Access产品下载188bet金宝搏

检查Polyspace安装

检查如果Polyspace代码验证服务器安装:

  1. 打开命令窗口。引导到polyspaceserverroot\polyspace\bin在这里polyspaceserverrootPolyspace代码验证服务器安装文件夹,例如:C:\Program Files\Polyspace服务器\R2021a.另见安装文件夹

  2. 输入:

    polyspace代码验证服务器-帮助

您应该看到代码验证器分析所允许的选项列表。

检查Polyspace网页界面是否已设置以供上载:

  1. 再次导航到polyspaceserverroot\polyspace\bin

  2. 输入:

    polyspace访问-主机名-端口号-创建项目testProject

    在这里,主机名是托管服务器的服务器的名称多空间码验证访问网络服务器。对于本地托管服务器,请使用本地服务器端口号I是服务器的可选端口号。如果省略端口号,9443使用。

    如果安装完成,则调用一个项目testProject在Polyspace web界面中创建。

    每次使用时,系统都会提示您输入登录名和密码polyspace-access命令。为避免每次输入登录信息,请在执行命令时提供登录信息和密码的加密版本。如果需要创建加密密码,请输入:

    polyspace访问-加密密码

    输入您的登录名和密码。复制加密密码并将此加密密码与-加密密码在使用polyspace-access命令。

  3. 在浏览器中,打开这个URL:

    https://主机名端口号/metrics/index.html
    在这里,主机名端口号是上一步中的主机名和端口号。

工程资源管理器在Polyspace web界面上的窗格中,您应该可以看到新创建的项目testProject

在示例文件上运行代码验证程序

要在您的操作系统中运行代码验证程序,请打开一个命令窗口。

  1. 要运行代码验证器分析,请使用polyspace-code-prover-server命令。

  2. 要将结果上传到Polyspace web界面,请使用polyspace-access命令。

要避免输入命令的完整路径,请添加路径polyspaceserverroot\polyspace\bin路径操作系统上的环境变量。

在Polyspace安装提供的样例文件上尝试这些命令。

  1. 复制示例源文件polyspaceserverroot\ polyspace \ \ cxx \ Code_Prover_Example \例子来源转到您具有写入权限的其他文件夹。在命令行中导航到此文件夹。

  2. 输入:

    example.c,single_file_analysis.c主发电机-results-dir。polyspace-access主机主机名- port端口号-登录用户名-加密密码pwd-create-project testProject主机名- port端口号-登录用户名-加密密码pwd-上传。-项目myFirstProject-父项目testProject

    在这里,用户名你的登录名是and吗pwd是您先前创建的加密密码。看到检查Polyspace安装

刷新Polyspace web界面。您可以看到新上传的结果testProject文件夹中工程资源管理器窗玻璃

要查看项目中的结果,请单击审查。有关更多信息,请参见Polyspace代码验证程序访问文档。您也可以使用Polyspace访问界面右上角的按钮。

的选项polyspace-code-prover-server命令是:

  • -来源:指定逗号分隔的源文件。

  • -我:指定包含文件夹的路径。使用-我每次您想要添加一个单独的包含文件夹时标记。

  • -结果目录:指定文件夹的路径,其中Polyspace代码验证结果将被保存。

    注意,结果文件夹在每次运行时都会被清理并重新填充。为避免在清理过程中意外删除文件,不要使用包含其他文件的现有文件夹,而是为Polyspace结果指定一个专用文件夹。

  • 验证模块或库(-main-generator):指定主要的函数如果在源文件中未找到,则必须生成

有关代码验证器分析可用选项的完整列表,请参见Polyspace代码验证服务器的分析选项. 要在帮助浏览器中打开代码验证程序文档,请输入:

polyspace代码验证服务器-doc

服务器上代码验证程序分析的示例脚本

要运行分析,您可以使用脚本,而不是在命令行中输入命令。脚本可以在每次添加或修改源文件时执行。

窗口示例®批处理文件如下所示。在这里,Polyspace安装的路径在脚本中指定。若要使用此脚本,请替换polyspaceserverroot您的安装路径。您必须已生成用于脚本的加密密码。看见检查Polyspace安装

echo off set POLYSPACE_PATH=polyspaceserverroot\polyspace\bin set LOGIN=-host hostName -port portNumber -login . log . log . log . log用户名-加密密码pwd"%POLYSPACE_PATH%\polyspace-code-prover-server" -sources example.c,single_file_analysis.c"%POLYSPACE_PATH%\polyspace-access" %LOGIN% -create-project testProject "暂停项目

Linux示例®Shell脚本如下所示。

POLYSPACE_PATH=polyspaceserverroot/POLYSPACE/bin LOGIN=-主机名-端口号-登录用户名-加密密码pwd${POLYSPACE_PATH}/polyspace-code-prover-server -sources example.c,single_file_analysis.c -I .\ -main-generator -results-dir .c${POLYSPACE_PATH}/polyspace-access $LOGIN -create-project testProject ${POLYSPACE_PATH}/polyspace-access $LOGIN -upload-project myFirstProject -parent-project testProject

在启动脚本的不同文件中指定源和选项

您可以在单独的文本文件中列出它们,而不是在启动脚本中列出源文件和分析选项。

通过从启动脚本中删除源文件和分析选项规范,您可以在提交新代码时根据需要修改这些规范,同时保持启动脚本不变。

考虑前面示例中的脚本。您可以修改polyspace-code-prover-server命令使用带有源和选项的文本文件。而不是:

example.c,single_file_analysis.c主发电机-results-dir。

使用:

polyspace代码验证服务器-源列表文件sources.txt-选项文件polyspace_opts.txt-结果目录。

在这里:

  • sources.txt列出源文件:

    example.c single_file_analysis.c

  • polyspace_opts.txt在单独的行中列出分析选项:

    -我-主发电机

通常,在生成命令(makefile)中指定源文件。您可以跟踪build命令来创建源规范列表,而不是直接指定源文件。看见多空间配置(Polyspace代码验证)

完整的工作流程

在一个典型的持续集成工作流中,您运行一个执行以下步骤的脚本:

  1. 从构建命令中提取Polyspace选项。

    例如,如果您使用makefile来构建源代码,那么您可以从makefile中提取分析选项。

    编译选项文件

    参见:

  2. 使用先前创建的选项文件运行分析。附加第二个选项文件,其中包含分析所需的其余选项。

    编译选项文件run_opts . exe

    看到为多空间分析准备脚本

  3. 将结果上传到多空间码验证访问

    polyspace-access登录上传resultsFolder项目projName父项目parentProjName

    在这里,登录是与托管的web服务器通信所需的选项组合多空间码验证访问

    主机主机名- port端口号-登录用户名-加密密码pwd

    resultsFolder是包含Polyspace结果的文件夹。projNameparentProjName项目和父文件夹的名称是否与在多空间码验证访问网络界面。

  4. 还可以选择向开发人员发送电子邮件通知,告知他们提交代码后的新结果。电子邮件中包含了链接到结果的附件多空间码验证访问网络界面。

    看到发送带有Polyspace代码验证服务器结果的电子邮件通知

参见中执行这些步骤的脚本示例使用Jenkins进行多空间分析的示例脚本

另请参阅

|

相关的话题