分享

parasoft c/c++嵌入式单元测试:项目导入和配置

 昵称28319554 2016-01-13

导入uVision项目

如果你使用的CppUnit或其他类似的框架,你可以把它作为项目的一部分,从IDE内部进行测试(这里是uVision)。这时,你有很多工作需要去做了。例如,设置独立的测试构建目标。在C++test中,您只需要提供您的项目设置。在这种情况下,配置不需要很大的工作量。你只要将C++test指向uVision项目文件,就可以自动进行导入。一旦导入完成,C++test将与原项目自动同步。

C++test中提供了一个项目导入的向导。你可以根据向导导入单个或多个项目。自动导入可以支持GUI模式和命令行模式。最简单的方法是,我们提供一个uVision项目的路径,并将路径输入到第一个向导屏幕中(在左侧)。接下来,向导会提示我们指定有关导入项目的一些细节:

  • C++test安装在哪
  • 变量是否被用来引用初始源代码位置(便于共享)
  • 获取编译器/连接器flag属性用于C++test分析,uVision项目目标的名称是什么

C++test使用构建的bat文件(由uVision IDE生成)获取编译器/链接flag属性。若uVision中的bat文件没有启用,则项目导入向导会发出警告并阻止该项目的导入。启动bat文件,只需在uVision项目属性复选框标注,如下图:

向导设置确认之后,C++test继续进行项目导入:最后新的C++test 项目与uVision项目同步。所有的基本设置会自动设置,因此无需额外的配置即可开始静态分析。然后选择静态分析的背景,再选择一个C++test提供的测试配置方案:

从分析结果确认uVision项目是否被正确导入。

配置C++test的单元测试

安装过程很简单,因为运行静态分析不需要执行代码:所有需要的设置都可以从uVision项目中得到。单元测试就有些复杂了。要想在目标上成功运行单元测试,C++test需要:

  • 准备测试组件(C/ C ++源文件)
  • 构建基于测试组件的可执行测试文件
  • 为了让uVision执行自动化测试,编写一个调试脚本
  • 启动uVision并执行调试脚本
  • 收集执行过程的数据并提供给用户

这些事情的工作量很大。对于不标准的项目来说,工作量会更大。例如,你可能需要生成特殊资源以便执行(包括到生成图像),或转换执行文件格式以便在目标上部署,等等。

C++test可以大量减少工作时间。所有的测试工作(无论是标准步骤还是自定义操作),都可以由“测试配置(test configurations)”完成。C++test内置了大量的测试配置。为了测试uVision4项目的ULINKPro调试和跟踪适配器,选择“Test Configurations> Builtin> Embedded Systems> Keil uVision> Run Keil uVision Tests- ULINKPro”。为单元测试配置C++test项目往往需要改变测试流程定义的参数,有时还需引入包含预定义的测试配置内部的测试流程。

引入自定义测试流程,用户将为“Userdefined”的内置配置创建一个副本,它是可编辑的。“Execution> General” 选项卡中包含了相关的测试流程的重要设置。该设置提供了执行流程的形式。用户可以为执行流程变量指定值。如同之前的步骤,C++test将把它们用于定义测试流程中。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多