这里介绍如何通过bdf方式导入项目到C++test工具中,以IAR ARM 6.5版本为例。C++test版本为9.6.1.
环境变量配置 #
请注意:如果之前没有在系统环境变量中添加如下内容。
则需要每次启动命令行窗口和C++test工具之前都要运行如下的内容设置环境变量。
SET PATH=C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\arm\bin;C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\common\bin;C:\Program Files\Parasoft\C++test\9.6;%PATH%
SET EW_DIR=C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5
如果IAR版本是固定确定不变的,建议在系统环境变量中写死,就不需要每次都执行Set命令去设置环境变量了。以下我以没有在系统中设置环境变量为例,则在执行操作之前需要通过SET命令设置环境变量。
-
启动命令行窗口。
-
通过Set设置环境变量,将IAR的两个路径(arm\bin;common\bin)添加到PATH变量中,同时将C++test安装目录也设置到PATH中,最好在设置一个EW_DIR变量。
- cd命令到项目文件所在位置。如果在非C盘,必须要先切换盘符(比如在D盘,运行D:回车)。
- 运行如下命令生成bdf。
这里稍微解释一下这个命令构成。命令名称是cpptesttrace(位置在C++test安装目录下),参数如下:
- --cpptesttraceProjectName用来指定导入到C++test后项目显示名称;
- --cpptesttraceOutputFile用来指定生成的bdf文件位置,请注意这里一定要写完整路径的文件名称。(这里非常重要)
- IarBuild 是IAR的构建命令。
- Sensor.ewp 是指当前位置的项目文件名称。
- -build 后面跟的是项目的构建方式。比如Debug、Release等。
所以针对我的那个示例项目,我可以使用如下的命令:
cpptesttrace --cpptesttraceProjectName=Sensor --cpptesttraceOutputFile=C:\Examples\Embedded\IAR-EWARM\Sensor\Sensor.bdf IarBuild Sensor.ewp -build Debug
如上图所示,项目静默方式在命令行中重新构建,同时在项目目录下生成了一个名为Sensor.bdf的文件。
- 此时就可以启动C++test了,但是我之前有说过启动C++test的时候需要设置那几个环境变量,所以如果没有在系统环境变量界面中设置,双击桌面是不正确的。这里我直接在那个命令行中启动C++test,因为之前在同一个命令行中已经在第2步的时候设置过了。所以没有问题。(或者你可以在本地为启动创建一个bat脚本,里面内容包含set环境变量的,然后双击bat脚本启动。如下图所示)
这里我直接在刚刚同一个命令窗口中输入cpptest.exe启动。
这里还需要注意,如果你之前在C++test中已经创建了该项目(通过IAR导入向导),那么你最好是先删除,不然会有重复项目,或者在这里启动C++test的时候,通过-data选项指定另外的工作空间。这样就不冲突了。比如
-
通过新建项目按钮,选择C++test创建来自构建数据文件(bdf)的项目。
-
下一步指定项目下生成的Sensor.bdf文件。同时在下面编译器上选择合适的编译器,这里我选择IAR 6.3X
-
点击完成按钮,结束项目导入。此时项目已经成功导入C++test。
-
选择某些源文件执行静态测试,验证导入正常,项目没有问题。
-
生成测试用例。
-
在测试配置面板中,修改一个符合要求的测试配置(从内建的里面复制一个Run IAR ARM Tests)。
将${cpptestproperty:arch}sim.dll改为${cpptestproperty:arch}sim2.dll
将--cpu=Cortex-M3改为自己实际的值,比如--cpu=Cortex-M4
- 选择某个测试用例运行这个修改后的测试配置。