天天看點

單元測試

main page

related pages

files

單元測試規範

cppunit是apache著名的單元測試工具junit的c++版本。

ubuntu安裝方式如下:

redhat需要下載下傳并編譯安裝。

valgrind是一個著名的記憶體缺陷檢查工具,可以檢查并定位記憶體洩露、越界等問題。

main函數絕對不應當成為測試的地方

除了utest目錄下,其它所有源碼目錄都不允許出現測試代碼

除了utest目錄下,其它所有源碼目錄都不允許出現包含test的檔案名。

每一個項目都應當包含一個名為utest,并位于項目根目錄下的單元測試目錄,用于存放 所有的單元測試用例。

utest目錄下隻應當有一個cpp檔案,名稱為project_utest.cpp,project根據不 同項目而異。這是單元測試函數的入口函數。

單元測試由于不釋出安裝,是以所有源碼都在頭檔案中實作,簡化開發工作。

每個類或模拟類的結構都應當對應一個單元測試類,并位于一個獨立的頭檔案中。

單元測試的類名為,要測試的類或模拟類的結構名加上test字尾。如需要測試的結構為 imchslexanalyzer,則單元測試的類名為imchslexanalyzertest。

每個測試測試的方法,代表了一組測試用例,并以小寫test開頭。

單元測試的目的有兩個:

發現功能性的問題,如函數的傳回不正确。(cppunit)

發現記憶體問題,如記憶體沒有釋放。(valgrind)

單元測試入口函數:project_utest

測試用例樣例: