【发布时间】:2017-06-08 01:41:45
【问题描述】:
我有一个托管的 Eclipse 项目,它使用 GNU ARM Embedded Toolchain 为 ST 微控制器进行编译。我现在要做的是,对该项目中的代码进行单元测试。我想用于单元测试的框架是 Google Test。
我尝试为单元测试创建第二个 Eclipse 项目,它使用标准 GNU 工具链。像这样:
项目 1 (ARM)
|---src
Project2(桌面)
|---测试
问题是双重的:
- 第二个项目无权访问第一个项目的源代码(显然)。因此,我尝试从第一个项目创建一个静态库用于测试目的,这导致了第二个问题。
- 从第一个项目创建的库与第二个项目不兼容,因为它使用 GNU ARM 嵌入式工具链而不是标准 GNU 工具链。
为了解决第二个问题,我在第一个项目中添加了构建配置,以尝试使用正确的工具链对其进行编译。但这并没有成功。
我走的另一条路是在与实际代码相同的项目中进行单元测试,并使用构建配置来创建用于单元测试的可执行文件。像这样的:
项目
|---src
|---测试
这也没有奏效,而且似乎与第一种方法存在相同的问题。
问题不在于单元测试本身。我知道如何使用 Google Test 在 Eclipse 中测试常规 C 项目。
在 Eclipse 中,如何对通常使用托管项目进行的嵌入式项目进行单元测试?有可能吗?如果是这样,这是一个好方法还是我应该编写自己的 makefile 来完成这项任务?
【问题讨论】:
标签: c eclipse unit-testing embedded