一、背景说明
任何时候给你的代码增加单元测试(或接口测试)都不晚,对于 C/C++ 使用比较广泛的单元测试框架应该非 googletest莫属了。
通常在工程代码中,使用 gtest 比较广泛的方式是以 lib 的形式来做单元测试,这种方式使用也比较简单直接,本文就不再赘述。
但是,对于大部分工程代码而言,并不是只有 EXE 文件,通常这些 EXE 文件都会依赖至少一个 DLL 文件,同时这些 DLL 文件并不会导出所有函数或类,而仅导出极少的东西给外部使用。(注:本文仅讨论 gtest 在 windows 上的应用)
那么,问题来了,该如何使用 gtest 对 DLL 里没有导出的函数或类做单元测试呢?