代码之家  ›  专栏  ›  技术社区  ›  Alperen

如何在Parasoft中创建构建数据文件(bdf)?

  •  2
  • Alperen  · 技术社区  · 9 年前

    如何为每个项目创建bdf?是否必须使用makefile项目?

    2 回复  |  直到 7 年前
        1
  •  5
  •   szmyru - Irek Sz.    9 年前

    谢谢你的回答,parasoft不是一个有名的话题。 答案值一块金子。我找不到cpptesttrace。 有cpptest和CPPTESSCAN。他们会吗?我使用的是老版本的parasoft。

    顺便说一句,这里是C++测试独立安装(不是Visual Studio插件)中程序的快速解释:

    • cpptest——启动C++测试GUI(基于Eclipse),通常用于桌面上的交互式工作
    • cpptestscan-用作编译器命令行的前缀,用于捕获单个编译信息并将其添加到BDF文件中
    • cpptesttrace-(自Parasoft C++test 9.4起)用作构建命令行的前缀,用于捕获所有编译命令并保存在BDF文件中

    cpptestscan和cpptesttrace之间的主要区别在于:

    • cpptestrace意味着在整个build命令中预先设置一次,它跟踪build命令调用的子进程。所有被识别为编译器调用的进程的记录都存储在BDF中。

    make CXX="cpptestscan g++" CC="cpptestscan gcc"
    

    对于基于make的项目,这通常是可能的。对于自定义或自动生成的构建脚本,所有赌注都已取消。通常,唯一的选择是修改项目构建脚本,人们通常对此感到紧张。 在这种情况下,cpptesttrace可以提供帮助,因为它完全是非侵入性的,并且可以从几乎任何构建过程中捕获构建信息。

    • 使用cpptestscan,您需要在每个项目的构建脚本中以某种方式将cpptestscan作为编译器的前缀,以创建相应的BDF
    • 使用cpptesttrace,您可以为每个项目运行build,在每个项目的build命令之前添加cpptesttrace,以创建相应的BDF 后者通常更容易,但您需要更新的C++测试(最新版本是10.3)。

    顺便说一句:如果你可以升级你的C++测试,请咨询Parasoft。

        2
  •  1
  •   Alperen    9 年前

    使用生成文件不是强制性的。 cpptesttrace测试跟踪 ,它监视生成过程并收集编译器调用以创建BDF文件。

    cpptesttrace的工作原理:

    • 确保运行完整重建(例如“全部清除”),以确保BDF包含有关属于您的生成的所有源的信息,以及如何编译这些源的信息
    • cpptesttrace有一组内置的受支持编译器,您可以通过运行“cpptesttrace--cpptesttraceHelp”来查看编译器可执行模式。如果您的GNU GCC编译器名称是“不寻常的”,您可以重新定义cpptesttrace正在寻找的模式。
    • 如果出现问题,您可以随时联系Parasoft支持部门

    假设,我的 满的 构建过程如下:

     make clean all
    

    我可以使用cpptesttrace按如下方式运行构建: cpptesttrace清除所有

    示例2:

    如果您的构建是带有脚本的多级过程,或者在过程中更改文件夹,那么最好告诉cpptesttrace BDF的绝对位置。扩展上述示例,我们可以运行:

    cpptesttrace --cpptesttraceOutputFile=`pwd`/cpptest.bdf  make clean all