1、下載
地址:http://code.google.com/p/googletest/downloads/list
當前最新版本爲 gtest-1.6.0
2、編譯
解壓 gtest-1.6.0.zip,目錄結構如下:
圖 1 :gtest 目錄結構
進入 msvc 目錄,存在 gtest.sln、gtest-md.sln,打開解決方案 gtest-md.sln。(也可以選擇gtest.sln,兩個解決方案的不同點是,gtest.sln 默認的運行時庫配置爲:多線程調試(/MTd),gtest-md.sln 默認的運行時庫配置爲:多線程調試 DLL (/MDd)。關鍵就是要和你使用 gtest 進行測試的項目的運行時庫一致,“多線程調試 DLL (/MDd)” 是新建項目的默認運行時庫配置,所以選擇 gtest-md.sln 以後使用方便。)
gtest-1.6.0 下的解決方案爲 VS 2003 格式,打開後 VS2008 會自動將其轉換爲 VS2008 格式。然後,執行“生成解決方案”。
在 msvc 目錄下會生成 gtest-md 文件夾,目錄結構如下:
圖 2 :gtest-md 目錄結構
如果在 Debug 目錄中看到 gtestd.lib、gtest_main-mdd.lib、gtest_unittest.exe、gtest_prod_test.exe 則說明編譯成功了。
3、配置
爲了方便配置和以後升級版本,先添加一個系統環境變量。
變量名:GTEST_HOME
變量值:C:\gtest-1.6.0
接着配置 VC++ 目錄。
打開 VS2008 “工具”->“選項”->“項目和解決方案”->“VC++ 目錄”,添加
可執行目錄:$(GTEST_HOME)\msvc\gtest-md\Debug
包含文件:$(GTEST_HOME)\include
引用文件:$(GTEST_HOME)\msvc\gtest-md\Debug
庫文件:$(GTEST_HOME)\msvc\gtest-md\Debug
源文件:$(GTEST_HOME)\src
4、測試
新建 “Win 32 控制檯應用程序”,名稱:gtestSample,“不使用預編譯頭”,“空項目”。到 $(GTEST_HOME)/samples 目錄下拷貝 sample1.cc、sample1.h、sample1_unittest.cc 文件到 gtestSample 項目目錄,並添加到 gtestSample 項目中。然後新建 gtest_main.cc 源文件:
#include <iostream>
#include <gtest/gtest.h>
int main(int argc, char * argv[])
{
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
};
圖 3:gtestSample 項目結構
項目配置完成,點擊“生成解決方案”,然後“運行”。
圖 4:gtestSample 運行結果
大公告成,gtest 相比 CppUnit 使用起來簡單很多,研究一下 samples 目錄中的例子就可以瞭解基本的編寫單元測試的方法。
參考:
[1] 玩轉Google開源C++單元測試框架Google Test系列(gtest)之一 - 初識gtest
編輯記錄:
V1.0 2011-9-12 10:06:19 初稿