2014-10-01 51 views
0

這是我第一次在QT中製作模擬對象。我正在嘗試使用Gmock,但我不知道如何使用它。 現在,我在QT中創建項目TestGmock(QT應用程序),並將gmock-1.7.0中的include文件夾(從https://code.google.com/下載)複製到TestGmock項目目錄(和gtest相同)。在主類:在QT中配置gmock

#include <QCoreApplication> 
#include "gmock/gmock.h" 
#include "gtest/gtest.h" 
int main(int argc, char *argv[]) 
{ 
    testing::InitGoogleMock (&argc, argv); 
    return RUN_ALL_TESTS(); 
} 

但是錯誤:

  • C:\ Qt的\ Qt5.2.1 \工具\ QtCreator \ BIN \ TestGmock \ main.cpp中:6:錯誤:未定義參考`測試:: InitGoogleMock(int *,char **)'
  • C:\ Qt \ Qt5.2.1 \ Tools \ QtCreator \ bin \ TestGmock \ gtest \ gtest.h:2288:error:未定義對`testing :: UnitTest的引用:: GetInstance()'
  • C:\ Qt \ Qt5.2.1 \ Tools \ QtCreator \ bin \ TestGmock \ gtest \ gtest.h:2288:error:undefined引用到`testing :: UnitTest :: Run()' collect2.exe:-1:
  • 錯誤:錯誤:LD返回1個退出狀態

使用gmock和GTEST在QT,請幫幫我。

+0

我使用3.0.1 – 2014-10-01 03:27:55

回答

0

這個錯誤是由於Qt Creator無法找到Gmock庫造成的。沒有必要將它放到你的項目(或Qt安裝)目錄中,但是你應該在.pro文件中添加INCLUDEPATHLIBS選項。看看Adding external library into Qt Creator project

+0

我嘗試使用 INCLUDEPATH + = C窗7和Qt Creator:\ gmock \ GTEST \包括\和 INCLUDEPATH + = C:\ gmock \包括:i萃取\ (gmock夾來自gmock-1.7.0)但它不好。 – 2014-10-01 04:40:41

+0

當我包括路徑,但另一個錯誤:錯誤:沒有規則使目標'../TestGmock/gmock/gmock.h','調試/ main.o'需要。停止。 – 2014-10-01 04:47:48

+0

您是否嘗試過手動調用'qmake'並重建您的項目?在發佈模式下是否會發生錯誤? – trivelt 2014-10-01 06:50:55