【发布时间】:2019-10-22 10:07:00
【问题描述】:
我是 google mock 的初学者,我不知道如何使用它和这个概念。
如果我正在尝试从一个类中测试一个方法,该类从不同的类中调用一些其他方法。 我是否需要从我的测试方法正在调用的不同类中模拟所有这些方法。 这是一个例子:
class A {
public:
A () {}
int setnum(int num) {//do some stuff return 1 or 0//
}
private:
int _num;
};
class B {
public:
B (){}
int init(A *a, int number){
if(a->setnum(number))
return 1;
return 0;
}
void setNum(int num){_num=num;}
private:
A *_a;
int _num;
};
class C {
public:
int doSoemthing(A *a, int number){
if (domore(a,number))
return 1;
return 0;
}
int domore(A *a, int number){
if(_b.init(a,number))
return 1;
return 0;
;}
private:
B _b;
};
我是否需要模拟测试我的测试方法所需的所有 A 类和 B 类方法? 或者我可以只模拟一个 Class ,并测试这个类是否有效。
【问题讨论】:
标签: c++ unit-testing googletest googlemock