1

到目前为止,这就是我所做的(我使用 Visual Studio):

  1. 创建测试项目
  2. 添加一些测试
  3. 添加代码。编译并运行
  4. 当测试失败时,编写代码使其通过
  5. 重复前面的 3 个步骤,直到我有我想要的代码。
  6. 创建一个使用测试代码的主项目。
  7. 在功能/错误修复中使用经过测试的代码。
  8. 在某个地方,存在一个需要更改测试代码的问题。
  9. 我现在需要转到测试项目并重复步骤 2 到 5。
  10. 然后回到主项目并编译并运行以验证功能/错误修复。

我想消除的是对两个不同项目的需求,并减少我在构建之间等待的时间和所需的上下文切换。本质上,我想收紧测试代码测试循环。

假设有一个 IDE,其中测试是主项目本身的一部分。我们还假设 IDE 可以识别测试通过和失败。最后,假设编译和运行测试发生在后台,我只需要在代码未构建或测试失败时处理错误。

我的工作流程现在只涉及一个项目:

  1. 创建项目
  2. 在项目中添加一些测试
  3. 添加代码。节省。
  4. 当测试失败时,编写代码使其通过
  5. 重复步骤 2 到 5,直到获得所需的代码。
  6. 添加使用测试代码实现功能或错误修复的逻辑。
  7. 如果需要更改测试代码,请返回步骤 2。
4

1 回答 1

1

除了琐碎的项目外,每次保存时都编译 C++ 代码通常非常耗时。也就是说,Eclipse CDT可以选择在构建之前保存更改。因此,您可以让构建命令触发保存,而不是保存命令触发构建,这在概念上是不同的,但具有相同的效果。要减少后续构建的构建时间,您可以使用ccache 之类的东西。

至于运行测试,您可以在 Eclipse 中通过添加一个运行单元测试的目标来执行此操作,该目标也可以由构建触发。当然,您可以在一个项目中拥有测试和代码。

于 2013-02-21T23:07:11.247 回答