我不得不测试一个类似于foo()的函数
class A{
.....
void foo(int a)
{
if( nullptr != m_member_name)
m_member_mane->another_function();
else Logger << "some message";
}
.....
Member_name *m_member_name;
}//end class A为了获得分支覆盖,我认为应该对m_member_name != nullptr和m_member_name == nullptr进行一个测试。
因为第一种方法很容易,因为我希望another_function()只被调用一次,使用
EXPECT_CALL(MOCK_Member_name, another_function())
.Times(1); // I created a mock for Member_name before其中MOCK_Member_name是Member_name的模拟
但是,我应该如何验证对于m_member_name == nullptr是否正在进行其他分支?
我知道这是个愚蠢的问题,但我只学习了很短时间的Google。
发布于 2020-04-24 14:01:27
我学习了更多(请参阅来源,在这个具体案例中有最好的解决方案。
如果我想验证它是否转到了其他分支,我应该只希望使用.Times(0);来调用If中的函数。
EXPECT_CALL(MOCK_Member_name, another_function())
.Times(0); 有关其他详细主题,请参阅:googletest-release-1.8.0-googlemock
https://stackoverflow.com/questions/61346384
复制相似问题