Gtest打樁函數


假設Client的定義如下

class Client
{
......
public :
  virtual bool GetData(std::string& data);
......
};

我們只需要重寫Getdata的方法,並且當參數data被傳進來時,我們可以返回特定的值。

這一套方法,google已經提供了很好的一套框架:gmock

下面介紹一下它的用法

#include  "client.h"               //被mock的類的頭文件
#include <gmock gmock.h= "" >   // gmock 的頭文件
class  MockClient :  public  Client
{
public :
  MockClient():Client() {}
  MOCK_METHOD1(GetData, bool(std::string&));
}</gmock>

這里使用了一個宏MOCK_METHOD1

原形是MOCK_METHOD#1(#2, #3(#4) )

#1表示被mock的函數參數個數,#2表示被mock的函數名稱,#3表示被mock的函數返回值,#4表示被mock的函數參數列表

這樣,一個“樁”就“打”好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM