为DLL库配置Google测试项目

问题描述 投票:1回答:1

我有DLL插件,我想在TeamCity上对其进行测试和启动:它包含.h和.cpp文件什么是测试此DLL的正确策略:

  1. 在相同的解决方案中创建一个新的Test Project,配置'include directory'以查看源并将DLL项目文件复制到Test console项目。在这种情况下,我具有相同的解决方案,但在控制台模式下,可以正常方式对其进行测试。但是,如果我的DLL项目将更改,则需要同步源文件。
  2. 在我的DLL中创建导出函数,例如'runTests()',它将生成带有结果的XML文件。 TeamCity将处理此流程吗?以及它应该如何运行? DLL发行版中出现了一些东西功能...
c++ teamcity googletest
1个回答
2
投票

为了对我们的库进行单元测试,我们创建了独立的单元测试控制台可执行文件。所以:

  1. 对于每个库,我们创建一个控制台可执行文件来测试API中的每个方法。
  2. 每个源文件显然已添加到SCM,因此修改文件将自动反映到单元测试程序中;
  3. [所有这些(源代码更新,编译,单元测试和文档生成)已添加到我们的CI服务器(Jenkins),以便始终从头开始重新编译所有单元测试程序的所有库;
  4. 库API的文档由Doxygen使用该程序的代码段构建。这有一个很好的副作用:更改API会破坏您的单元测试。因此,您必须修复单元测试,以便文档始终是最新的。
© www.soinside.com 2019 - 2024. All rights reserved.