簡體   English   中英

如何使用Google Test為cpp庫編寫單元測試

[英]How to write unit test for a cpp library already exist using google test

有一個類似於libxml2的庫。 它已經存在。 我不會創建一個新的庫。 我想使用Google測試對現有庫進行單元測試。 我正在使用Visual Studio2013。我需要良好的參考或任何幫助來開始使用。

使用gtest並不是很復雜並且有充分的文件記載

設置構建

令人驚訝的主要內容是如何在項目中使用它。 “官方”方式是在源中復制整個存儲庫。

例如,您可以通過克隆在項目中創建googletest子目錄: https : //github.com/google/googletest.git

然后,您需要將其添加到項目的構建中。 這取決於您使用的構建系統和所使用的平台。 我對Visual Studio不了解,但這應該很容易適應。 您需要擴展包含路徑(只能對測試對象執行此操作):

TEST_CFLAGS=-I$(GTEST_DIR)/include -I$(GTEST_DIR)

並在要與測試鏈接的對象中添加gtest-all.o (或Windows上的等效項)。

您還必須創建一個新目標,因為您的單元測試將由二進制文件啟動。 同樣,我不確定如何使用Visual Studio處理它,但是對於普通用戶來說應該很容易。

編寫測試

開始編寫測試很容易。 但是,編寫好的測試很困難,我也不會介紹,有很多好的書籍網站,但最重要的是,這需要實踐和時間。

要編寫您的第一個測試,您將需要一個非常容易編寫的主文件(例如main.cc):

#include <gtest/gtest.h>

int main(int argc, char **argv) 
{
    ::testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

一個很好的起點是看例子 然后,您可以按照gtest doc中的入門知識,對基本功能有所了解。 如果您覺得自己需要更多,可以閱讀高級指南

最后的話

祝您單元測試和(希望)測試驅動的開發旅途順利。 一開始這可能很難。 不要放棄快速,回報是巨大的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM