我有一個C++(VS 2013)控制檯應用程序,我想測試它(使用Google測試)。VC++ VS 2013,如何從另一個項目中使用(測試)類?
我創建了一個單獨的項目,並添加GTEST包括(使用本教程http://www.bogotobogo.com/cplusplus/google_unit_test_gtest.php爲exanple)和簡單的測試,這樣的做工精細路徑等:
TEST(MyTests, myTest1)
{
EXPECT_EQ(2+2, 4);
}
但如何從主項目中使用類?如果我只是簡單地添加項目目錄來包含路徑,那麼我可以使用「僅頭文件」代碼,但對於在.cpp
中執行的類,我得到unresolved external symbol
錯誤。
有沒有比移動所有類到圖書館更好的方法來測試它?
_「是否有比將所有類移動到庫更好的方法」_否,您需要爲待測試類創建一個庫。 –
將必需的源文件包含到您的測試項目中。或者,將測試項目文件移動到測試項目文件所在的相同文件夾(因此包含/排除文件會更容易)。這對於小型項目來說工作得很好,但很快就會在一個大型多項目解決方案中變得混亂。 – Drop
而不是「將所有類移動到一個庫」將其視爲「將'main'函數移出到可執行項目中」。事情會變得更容易。 ;) – Drop