如何創建第一個cppunit測試項目?實踐出真知!

創建第一個CPPUNIT測試項目

 

 查閱了幾十篇網文,經過了十多次失敗,終於編譯成功了。在這個過程中,深切的體會到網絡的文章大多數都是語焉不詳,或不夠完整。有的甚至會引導你走些彎路。

在此記錄下如何成功創建第一個cppunit項目,爲所有cppunit的新來者提供參考。

一準備CPPUNIT的開發庫

1.     到http://sourceforge.net/projects/cppunit/下載CppUnit測試框架的源代碼, 解壓文件(解壓後位於:E:\自動化測試\cppunit-1.10.2),進入src文件夾,打開CppUnitLibraries.dsw.

2.     右鍵單擊解決方案名稱“CppUnitLibraries”,選擇“重新生成解決方案”: 編譯,輸出位置爲lib文件夾。

3.     在VC的工具-選項-項目和解決方案-VC++目錄:

“包含文件”——增加“E:\自動化測試\cppunit-1.10.2\include”;

“庫文件”——增加“E:\自動化測試\cppunit-1.10.2\lib

4.     修改path環境變量,增加“E:\自動化測試\cppunit-1.10.2\lib

 

二創建第一個基於CPPUNIT的測試項目“cppunit3”

1. 新建-項目-Visual C++-Win32-Win32控制檯應用程序:

   輸入解決方案名稱:cppunit3

   位置:E:\自動化測試\cppunit

 

2. 在cppunit3.cpp中做以下修改:

 

   1)在main函數前增加以下代碼:

  #include <cppunit/TestCase.h>

#include <cppunit/TestResult.h>

#include <cppunit/TestResultCollector.h>

#include <cppunit/TextOutputter.h> 

 

class SimpleTest : public CppUnit::TestCase

{

public:

    void runTest() // 重載測試方法

     {

        int i = 1;

         CPPUNIT_ASSERT_EQUAL(0, i);

     }

};

 

2)main的函數主體內容修改爲:

       CppUnit::TestResult r;

     CppUnit::TestResultCollector rc;

     r.addListener(&rc); // 準備好結果收集器

 

     SimpleTest t;

     t.run(&r); // 運行測試用例

 

     CppUnit::TextOutputter o(&rc, std::cout);

     o.write(); // 將結果輸出

 

    return 0;

 

三編譯(F7

   編譯時,出現“無法解析的外部符號”致命錯誤,解決辦法

1.項目(Project)->屬性(Properties)->配置屬性(Configuration Properties)-> C/C++ -> 代碼生成(Code Generation):

基本運行時檢測(Basic Runtime Check)改爲默認(Default);

緩衝區安全檢測(Buffer Security Check)改爲否(No);

2. 項目(Project)->屬性(Properties)->配置屬性(Configuration Properties)-> 連接器-> 輸入:

附加依賴項:cppunitd.lib

 

編譯中,還可能出現“無法識別的外部符合”致命錯誤,解決辦法是將拷貝過去的代碼的空格全部刪除。原因是有的空格是全角格式,不能識別。

 

編譯通過。

 

四運行:開始執行(不調試)

 

界面上出現

 !!!FAILURES!!!
Test Results:
Run: 1 Failures: 1 Errors: 0

1) test: (F) line: 18 E:\CppUnitExamples\SimpleTest.cpp
equality assertion failed
- Expected: 1
- Actual : 0

 

與示例程序一致,項目調試成功!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章