如何在KDevelop中将自定义构建步骤添加到基于自动制作的项目中?
我最近开始使用C ++和KDevelop进行个人编码项目。尽管我只是从闲逛开始,但我认为从长远来看,如果我设置一个适当的单元测试套件,然后再进行进一步研究,那将是更好的选择。我已经创建了一个单独的测试运行程序可执行文件作为子项目,并且我添加到该程序中的测试似乎可以正常运行。到目前为止,成功。
但是,我真的希望每次构建时都运行单元测试,而不仅仅是在显式运行它们时。当我将自己制作的混乱情况分解成便利库时,尤其如此,每个便利库可能都有自己的测试可执行文件。与其手动运行它们,不如让它们作为构建过程的最后一步运行。我已经浏览了项目菜单和自动制作管理器中的所有选项,但是我不知道该如何设置。
我想这可能可以通过手动编辑makefile来完成。不幸的是,我的makefile-fu有点虚弱,而且我还担心,当我下次通过IDE进行更改时,KDevelop可能会覆盖我手动进行的所有更改。因此,如果可以选择如何通过KDevelop本身执行此操作,则我更愿意采用这种方式。
有人知道在构建过程中如何让KDevelop运行我的测试可执行文件吗?谢谢!
(我并不是100%地依赖于KDevelop。如果KDevelop无法做到这一点,或者如果有一个IDE可以使这一点变得更加容易,我可以说服我切换。)
解决方案
尽管我们可以操纵默认的" make"目标来运行测试,
通常不建议这样做,因为每次调用
make
将运行所有测试。
我们应该改为使用"检查"目标,
这是软件包中公认的准标准。
通过这样做,
仅在我们运行时才开始测试
make check
然后,我们可以轻松配置KDevelop
运行" make check",而不仅仅是" make"。
由于我们使用的是自动制作功能(通过KDevelop),
我们无需自己编写"检查"目标。
相反,只需编辑Makefile.am
并设置一些变量:
TESTS = ...
请看看
automake文档,"对测试套件的支持"
了解更多信息。