gmock

    1熱度

    2回答

    我正在使用GMock爲我們現有的Java項目添加一些單元測試。我們有多個需要測試的方法是靜態方法的地方,這些方法在我們想要測試的方法中利用額外的靜態方法。 我希望能夠部分地模擬類,幾乎所有的靜態方法除了初始測試的入口點之外。 例如: class StaticClass { static void method(String one) { method2()

    0熱度

    3回答

    linking error when building Google test on mac (commandline) 在底部,你寫一個編輯對同一臺計算機上發現多個gmock安裝搞亂了包括路徑,編譯器,它被打的時候,1.5的32位版本,而不是正確的。 我通過BREW裝礦; brew安裝gmock,它工作,一切 - 但我遇到了同樣的問題。如果你可以告訴我如何像你在文章中提到的那樣正確地編譯它,我會

    4熱度

    1回答

    我正在使用Qt的QTestLib單元測試框架+ GMOck。 我想設置模擬服務器使用gMock簡單地接收數據從一個單元測試QTcpSocket VerifySendData()方法。 如果有人給我一個例子,我怎麼可以創建模擬對象gMOCK(除CALL,創建Mock對象) #ifndef TST_TCPCOMMTEST_H #define TST_TCPCOMMTEST_H #include

    10熱度

    2回答

    我在我的項目中使用gmock,並且遇到問題以爲模擬函數設置自定義引用變量。 假設我有一個類如下: class XXXClient { public: void QueryXXX(const Request&, Response&); }; class XXXRunner { public: void DoSomething(XXXClient&); }; 有一個

    3熱度

    2回答

    鑑於接口 class IFooable { virtual void Fooable() = 0; }; class IFoo { virtual void Foo(IFooable* pFooable) = 0; }; 和古爾模擬模擬 class TMockFoo : public IFoo { MOCK_METHOD1(Foo, void (IFooa

    0熱度

    2回答

    我發現在運行多個gmock測試時使用和在內存數據庫中,我得到關於已經存在的表的錯誤。它似乎多次運行Spring上下文創建,儘管它只在給定的測試類中設置一次,作爲所有測試方法使用的字段。 理想情況下,我想讓多個類重用相同的上下文,但即使使用單個GMockTestCase的多個方法重新創建spring上下文。 覆蓋Junit安裝方法沒有幫助。 我覺得這種行爲非直觀和不正確的,但可能有一些我不明白怎麼g

    2熱度

    2回答

    我是一個帶gmock的新用戶。 我不知道如何使用gmock來模擬這個類,它的實例作爲其他類中的類成員。 的代碼看起來像下面: classs B { B_fun(); }; class A { B b; A_fun() { if(b.B_fun() === XXX) { doXXXXX... } } 現在,

    0熱度

    1回答

    我想用boost替代SomeFunction和SetArg以更通用。 它看起來像bind結合lambda可以完成,但我不知道如何。 這段代碼很簡單,但我想更換的原因是因爲我需要一個2和3等參數。 template<class T> struct SomeFunction { T value; SomeFunction(T s) : value(s) {}

    1熱度

    2回答

    我在與EXPECT_CALL方法的問題 ,試圖做到這一點的時候: boost::program_options::variables_map vm; MyMock mock; EXPECT_CALL(mock, MyMethod(vm)).WillOnce(Return(L"")); 的MyMethod看起來是這樣的: std::wstring MyMethod(const boost::

    5熱度

    5回答

    我有2種方法 class A { void Fun() { if(FunRet()>0){///} else {///} } int FunRet() { return 4;} }; 我想測試玩轉()方法取決於什麼FunRet收益類。所以我想嘲笑FunRet。 我寧願不想讓FunRet變得虛擬。我該怎麼做?