一、打开 VectorCAST
通常情况下,技术人员会配置一个脚本文件(.bat、.cmd),用户可以通过这个脚本文件来启动 VectorCAST。使用脚本文件启动 VectorCAST,可以在启动时设置好编译器相关的环境变量,方便 VectorCAST 在构建环境时自动调用编译器,找到相关路径。每个环境的启动脚本的内容会有些差异,不 同环境的启动脚本不通用。 如果用户所在行业有覆盖率认证要求时,可以在菜单 Tools 中选择对应的覆盖率认证要求。
VectorCAST 内置了以下行业覆盖率:
1. DO-178 B/C (Avionics 航空航天)
2. ISO-26262(Automotive 汽车)
3. IEC-61508(Industrial 工业)
4. EN-50128(Railway 轨道交通)
5. IEC-62304(Medical 医疗)
二、创建环境
1、建立测试环境
菜单 File –> New -> C/C++ Environment,会打开环境创建向导窗口,在环境创建向导窗口可以对 新的环境进行设置。
(1)第一步:设置编译器
VectorCAST 支持很多种编译器,用户可以根据自己实际需要选择对应编译器。如果没有找到需要的 编译器,也可以选择相近的编译器,然后对它的设置进行修改。点击左上角的 Compilers,在弹出的菜单 中选择被测工程的对应的编译器。
设置编译命令
在下方第一个选项卡(Preprocessor/ Compiler)中,可以设置编译器的预处理命令和编译命令。 Preprocessor command:预处理器命令
Compile command:编译命令
点击下方的 Parse Command Line 按钮,可以自动解析编译命令中的-I 和-D 选项。
在上方文本框中粘贴完整的编译命令,点击 Parse 按钮,会自动将-I (Includes) 和-D (Defines) 选项 解析出来,解析后的内容可以在下方的文本框查看,点击 OK 按钮后,这些解析的结果可以同步在设置中。
设置链接命令
在下方第二个选项卡(Linker/Debug)中,可以设置编译器的链接命令和调试时使用的调试器命令。
Linker command:链接器命令
Linker options:链接器选项,在这里可以填写要链接的第三方库等
Debugger command:调试器命令,用于调试执行测试用例时的命令
(2)第二步:给环境命名
在这里可以填写环境名称,环境名称需要是英文,小写英文字母会自动转换为大写。完成后点击 Next。
(3)第三步:选择测试方法
VectorCAST 支持以下四种测试方法:
Traditional Unit Testing:传统测试单元测试
Object File Testing:对目标文件进行测试
Library Interface Testing:对库文件进行测试
Test-Driven Devlopment:测试驱动开发
第一种是 Traditional Unit Testing,传统测试单元测试方法,这种方法是根据测试代码生成测试用 例,然后执行用例,生成报告;第四种是 Test-Driven Devlopment,测试驱动开发,与第一种相反,先 生成测试用例,根据测试用例编写代码,一般用于驱动开发;第二种是 Object File Testing,对目标文 件进行测试;第三种是 Library Interface Testing,对库文件进行测试。一般在这一步选择第一种,传统 单元测试,完成后点击 Next。
(4)第四步:选择覆盖率类型
这一步选择覆盖率类型,在 Coverage type 旁边的下拉菜单中选择需要的覆盖率类型,覆盖率分为 None(无覆盖率)、Statement(语句覆盖)、Branch(分支覆盖)、Basis Paths(基本路径覆盖)、MC/DC (MC/DC 覆盖)、Function(函数覆盖)、Function + Function Call(函数+函数接口覆盖)、Statement + Branch(语句+分支覆盖)和 Statement + Branch + MC/DC(语句+分支+MC/DC 覆盖)。在这一 步需要根据实际的需求选择合适的覆盖率类型。完成后点击 Next。
(5)第五步:选择项目的文件夹
点击 按钮,选择待测项目文件夹,在这一步,VectorCAST 会遍历项目文件夹下所有的文件夹。 完成后点击 Next。
(6)第六步:选择被测文件
在这一步,VectorCAST 会识别出项目文件夹下所有的源文件,并将其显示在左侧区域。在单元测试 阶段,每个测试环境添加一个文件进行单元测试。
在左侧区域选中要添加的文件,点击 按钮,将文件添加进环境,或双击要添加的文件,将文件添 加进环境。在这里第七步和第八步不需要进行任何设置,完成后点击 Build 按钮。
点击 Build 按钮之后,会自动构建测试环境,这个测试环境包含了被测代码和测试驱动代码,这些 代码组成了一个完整的测试套件。VectorCAST 会调用项目本身的编译器,对测试套件进行编译和链接, 生成一个可执行文件,这个可执行文件运行在目标板或模拟器上。
在单元测试阶段,需要对每一个源文件创建一个单元测试环境,对文件中的每个函数进行单元测试。
(7)勾选“Tools->Options->Builder->Stub fuctions without prototypes”
这样,即使是被测试的文件中调用了别的文件定义的函数,也不会再报错