2017-10-28 81 views
0

目前我正在完成我的學校項目,但最後需要做的事情是文檔。我對單元測試感到困惑,基本上我知道的是,我需要一個testfile.cpp爲我創建的每個類。但我不知道該把文件放在哪裏,因爲我的導師告訴我在testfile.cpp裏面有一個main()但是不是一個項目只能有一個main()爲測試單元創建目錄C++ [Code :: Blocks]

是否有任何可能的方式我可以創建一個新的文件夾並將其命名爲TestingFolder爲例,然後將testfile.cpp放入裏面但仍然可以執行以證明。

請評論是否有任何問題不清楚,我是新來的C++和文檔,道歉。

回答

0

您不能有多個main()函數。但是您可以爲所有cpp測試文件的每個main()函數創建特定的namespace

testfile.cpp

namespace test 
{ 
    TESTCASE() 
    { 
     .... 
    } 
    int main() 
    { 
     RUN_ALL_TESTS(); 
     return 0; 
    } 
} 

main.cpp中(真正的主文件)

int main() 
{ 
    bool flag = true; 
    if(flag) 
    { 
     test::main(); 
     anotherNamespace::main() // for each test files (for each class that 
           // should be tested) 
     return 0; 
    } 
} 

flag意味着一個布爾變量如果測試被激活。 如果你的老師想在同一個C++項目中使用main()函數,這就是解決方案。通常,爲單元測試創​​建另一個項目。