首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开始代码::块和UnitTest++

开始代码::块和UnitTest++
EN

Stack Overflow用户
提问于 2011-09-18 16:20:28
回答 1查看 3K关注 0票数 9

我即将开始一个C++项目,但我仍然停留在基础上。

我想使用(linux)代码::块IDE,并且很容易创建一个正常的项目。但是,我想使用UnitTest++框架来完成TDD,而且我不知道如何干净地设置所有内容。

我已经问过一个问题在哪里放置UnitTest::RunAllTests()命令,他们告诉我最好的地方是一个单独程序的main()

如何在Code::Block中这样做?我想我需要创建两个项目:

  • 有自己的main()的“真实”项目;
  • 包含测试的单元测试项目和内部带有main()UnitTest::RunAllTests()

然后以某种方式构建第一个项目,并在其构建过程中运行第二个项目。我还不知道怎么做,但我可以自己找出答案。

我的问题是:

  1. 这是正确的方法吗?
  2. 我是否也必须为UnitTest++框架创建一个项目,以便让其他人在其他平台上构建它?还是在项目的路径中放弃已编写的库就足够了?
  3. 如何将这些项目的目录组织在一起?最好将与每个包相关的测试放在与该包相同的目录中,但是在同一个目录树中有多个项目可以吗?
EN

回答 1

Stack Overflow用户

发布于 2011-09-19 10:00:15

我会部分地回答我自己的问题,因为我已经设法使一切正常运转。

  1. 按照正式文件页上的说明,我将UnitTest++文件夹与编译后的库和所有源文件放在项目的路径中。
  2. 然后,我为所有的单元测试创建了一个测试项目,其中包含了一个包含著名的UnitTest::RunAllTests()的主要功能。我将$exe_output作为构建后的过程放在这里,以便每次构建该项目时都能自动执行测试。
  3. 我创建了一个“真正的”项目,我的代码将在那里进行测试。在构建设置中,我将测试项目指定为真实项目的依赖项,因此每次构建真实项目时,它也首先构建测试项目。

有了这些设置,我就可以对我的测试和真正的代码进行工作,我只需要构建一个真正的测试就可以执行更新的测试。任何失败的测试也会导致构建失败。

现在还有两个问题:“这是最好的办法吗?”“现在,每个项目都生活在不同的目录中。这样做更明智吗?还是应该将每个测试放在要测试的真正代码所在的文件夹中?”

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7462752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档