//helloworld.cpp
#include
#include
#include
#include
#include
#include
#include
//建立乙個測試用例,繼承自testcase
//該測試用例裡面有乙個測試函式
class test : public cppunit_ns::testcase
void teardown(void) {}
protected:
void testhelloworld(void)
void testmath(void)
//void
//該巨集自動將上面定義的測試用例,註冊到乙個用例庫中,通過cppunit_ns::testfactoryregistry::getregistry().maketest()就可以得到其包含的所有測試用例
cppunit_test_suite_registration(test);
int main( int argc, char **argv )
這個**的最終輸出是列印到螢幕的hello world!但是,它在後面進行了很多任務作,繼承testcase生成了乙個自己的測試用例,將其註冊到用例庫中,對測試的執行環境進行了設定,然呼叫testrunner執行測試用例,最終得到測試的成功與否!
通過上面的例子,還可以知道如下幾點:
1. cppunit內部使用了很多的巨集定義,這些巨集分別分布在cppunit的眾多標頭檔案裡面,所以在使用cppunit時,要引入很多的標頭檔案;
2. cppunit的語法風格非常的面向應用,語義性很強。例如「測試用例」,「測試執行著」,「執行結果」等類;
3. 通過巨集的使用,main函式中跟具體測試類相關的**已經完全不存在了,下次在增加新的測試用例,無需對main函式進行任何修改。可見,cppunit的自動化程度是很高的,同時測試框架的可復用性很高,無形降低了初學者的使用成本。
CPPUnit學習筆記
2 解壓 tar xf cppunit 1.12.1.tar.gz 3 進入目錄後執行configure 4 編譯makefiles make make install 以上步驟執行後出現問題 make失敗 糾結查了好久,終於在stackflow上看到解決辦法 1 ubuntu 16.04 lts ...
學習筆記 解讀CppUnit原始碼2
上次我詳細的剖析了與test.h相互關聯的 test類是cppunit的核心。test這個類相信看了上一章就知道,也就起到測試用例的作用,但是畢竟乙個類的功能有限,如何擴充test類的功能呢?下面裝飾者模式就登場了。testdecorator.h 這個類中儲存了乙份test的指標,這個類的count...
學習筆記 解讀CppUnit原始碼6
看了前面5章的話,就可以了解cppunit大致的結構了。這裡講講一些並不是很核心但卻是不可貨缺的 看看他們雖然學不到優秀的設計知識,但是鞏固一下c 的基礎也不錯。sourceline.h c中關於檔名和 所在的行數有兩個巨集定義 file line 方便在除錯和其他場合輸出。而這個sourcelin...