本主题介绍如何使用 Wind River Workbench 4.x 的 C/C++test 插件执行单元测试。有关使用 C/C++test 的信息请查阅 测试创建和执行 。
使用 Wind River Workbench 4.x 的 C/C++test 插件执行和收集单元测试信息需要执行以下步骤
配置项目
Wind River Workbench 4.x 的 C/C++ 4.x 插件支持以下项目类型:
- 可下载内核模块
- 实时进程
在测试执行之前,请确保您的项目可以在 Wind River Workbench 中构建并正确配置。打开项目的 属性 ,跳转至 Parasoft> C/C++test> 构建设置 ,并确保配置了以下选项:
- 选中了 使用 Wind River Workbench 项目中的选项 选项,该选项位于 选项源 下拉菜单中。
- 正确设置了 构建目标 选项。
- 启用了 与项目设置同步 选项。
在第一次分析运行期间,将自动设置编译器系列和可执行文件。
为测试自动化配置执行环境
在测试执行之前,请确保项目可以在执行环境中(模拟或目标)中成功运行并正确配置。
- 确保在 VxWorks 运行时环境中启用调试代理。
- 确保调试代理目标地址与测试配置中指定的目标地址匹配。
C/C++test 使用的默认目标是127.0.0.1:60000
。可以在测试配置中自定义目标地址(请查阅 Customizing the Test Configuration)。
避免对调试代理使用网络端口自动映射。配置 VxWorks Simulator 时,可以指定固定的【调试代理】本地端口。跳转至 高级> 网络配置> 配置... ,为 debug_agent 配置新的端口映射:: 远程端口:1534 > 本地端口:60000。 - 确保具有主机目标路径映射的文件系统(例如 HostFS、PassFS)在 VxWorks 运行时环境中可用。
默认情况下,C/C++test 在收集测试和覆盖结果时使用自动检测到的宿主 - 目标映射。可以在测试配置中自定义映射(请查阅 Customizing the Test Configuration)。
自定义测试配置
要查看或修改执行环境的配置设置,请执行以下操作:
- 打开 IDE 菜单中的 Parasoft> 测试配置 。
- 跳转至 内置> 嵌入式系统> Wind River> Workbench 4。
- 根据项目类型,右键单击其中一项以下测试配置,然后选择 复制:
- 运行 VxWorks DKM 单元测试(文件系统, WRWB 4.x) (针对 DKM 项目)
- 运行 VxWorks RTP 单元测试(文件系统, WRWB 4.x) (针对 RTP 项目)。 - 选择复制的测试配置,它将被添加到 用户定义 类别中。
- 跳转至 执行> 常规> 执行 细节,查看或更改以下设置:
- 目标地址 - 指定目标地址 (host:port)
;默认值为127.0.0.1:60000
。请确保地址与 VxWorks 模拟器或运行目标的设置相匹配。
- 目标-主机路径映射 - 指定目标与主机之间的路径映射 (/target/path=/host/path
)。C/C++test 使用该映射来存储和访问测试和覆盖率日志文件。 映射必须包括“测试执行日志目录(在主机上)”中指定的主机位置。默认情况下,C/C++test 自动检测并使用【调试代理】提供的可用映射。
- 到 VxWorks 图像的路径 (仅针对 DKM 项目) - 指定 VxWorks 图像的路径,该图像用于提取有关可用符号的信息(对于 正确 配置存根所必需的)。如果使用 VxWorks Simulator,C/C++test 自动 检测 VxWorks 图像。如果连接到【运行目标】,则必须手动提供到图像的路径。 确保使用 Unix 样式的路径分隔符 (c:/path/to/vxworks/image
)。
创建测试用例和配置桩函数
有关如何使用 C/C++test 创建和配置测试指导说明,请查阅 测试创建和执行 。
有关创建和配置桩函数的信息,请查阅 桩函数 。
新添加的测试文件和存根文件自动从构建目标中排除。
为 DKM 项目创建桩函数
如果为DKM项目配置存根,我们强烈建议收集有关 xWorks 核中可用符号的信息。可以通过创建自定义测试配置实现这一点。
- 复制 内置>生成存根配置。
- 将新配置重命名为 为 DKM 目生成存根。
- 跳转至 执行> 常规> 执行详情> 测试执行流 ,然后选择下拉菜单中的 为 VxWorks DKM - WRWB 4.x 生成存根 。
- (可选)配置到 VxWorks 图像的路径(请查阅 Customizing the Test Configuration)。
- 单击 应用。
执行单元测试
确保已连接 VxWorks Simulator 或【运行目标】。
- 选择要执行的测试。
- 根据项目类型,运行其中一项以下测试配置:
- 运行 VxWorks DKM 单元测试(文件系统, WRWB 4.x) (针对 DKM 项目)
- 运行 VxWorks RTP 单元测试(文件系统, WRWB 4.x) (针对 RTP 项目)。
有关运行测试配置的详细信息,请查阅运行测试配置 。
C/C++test 将自动:
- 检测代码
- 构建测试二进制文件
- 将二进制文件加载到目标中(使用调试代理)
- 执行测试(使用调试代理)
- 将二进制文件加载到目标中(使用调试代理)
- 从目标卸载二进制文件(使用调试代理)
查看结果
测试执行完成后,您可以查看: