2010-09-09 76 views
5

我正試圖學習如何測試程序,所以我試着提升。我開始讀它,here我見過這一行:如何使用boost :: unit_test?

現在我可以編譯和鏈接與單元測試框架
從哪裏以及如何得到單元測試框架?它是什麼?
我只是不知道該吃什麼。有人可以提供一些如何使用它的步驟,也可以指向其他一些教程,甚至像單元測試框架這樣的最簡單的東西以及如何鏈接它們也會被解釋。
謝謝

+0

http://www.boost.org/doc/libs/1_44_0/libs/test/doc/html/tutorials/new-year-resolution.html上的教程很奇怪。 http://www.boost.org/doc/libs/1_44_0/libs/test/doc/html/tutorials/intro-in-testing.html頁面開頭的電子郵件已經失效。而且似乎作者甚至還沒有編譯代碼,在頁面http://www.boost.org/doc/libs/1_44_0/libs/test/doc/html/tutorials/上使用了可怕的宏BOOST_AUTO_EST_CASE(錯過的字母) new-year-resolution.html – sergtk 2012-02-22 11:41:11

+0

所有固定的Boost 1.60+ – Raffi 2017-06-30 00:33:20

回答

2

只是一個快速的評論。這個庫的問題是它至少有三種不同的方式來實現和運行測試。根據您在添加boost單元測試頭之前添加到代碼中的#defines,它可以自動爲您生成一個主函數(然後構建一個執行您定義的測試的完整程序)或依賴外部測試運行程序。

仔細閱讀那些運行模式知道該怎麼做。通常,最簡單的方法是這樣做:

  • 將您的測試包含在.cpp文件中。
  • 包括單元測試的頭文件之前,定義預處理宏BOOST_TEST_MAIN(這將定義將運行測試主要功能)
  • 鏈接程序對libboost單元測試DLL(這依賴於系統)。

您的程序將執行定義的測試,感謝自動生成的主函數。

+0

這不是問題。這是功能;) – 2011-03-17 00:09:22

+0

Gennadiy,你可以看看我對這個問題的評論嗎? – sergtk 2012-02-22 11:44:19