正在为DLL库配置Google测试项目

Configuring Google test project for DLL library

本文关键字:Google 测试 项目 配置 DLL      更新时间:2023-10-16

我有一个DLL插件,我想在TeamCity上测试并启动它:它包含.h和.cpp文件测试这个DLL的正确策略是什么:

  1. 在同一解决方案中创建一个新的测试项目,配置"包含目录"以查看源,并将DLL项目文件复制到测试控制台项目。在这种情况下,我有相同的解决方案,但在控制台模式下,我可以用正常的方式进行测试。但如果我的DLL项目将改变,我需要同步源文件
  2. 在我的DLL中创建导出函数,如"runTests()",它将生成带有结果的XML文件。TeamCity会处理这个吗?它应该如何运行?发布DLL中出现了一些填充函数

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

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