如何期望通过使用Google测试(模拟)以特定的频率调用函数?

时间:2018-07-25 07:02:06

标签: c++ mocking googletest

我有一个功能,该功能被配置为以一定的频率调用(比方说每秒)。我需要实施一个测试,以检查该功能是否满足此要求。

我希望拥有.Frequency(,)之类的限定词,但找不到。所以我会:

EXPECT_CALL(my_obj, obj_function()).Frequency(900, 1100);

如何使用Google Test验证此要求?

1 个答案:

答案 0 :(得分:0)

您的问题与this并不完全相同,但是相似。我认为您可以执行以下操作:

StartTimer()
EXPECT_CALL(my_obj, obj_function());
EndTimer();
ASSERT_TRUE(elapsedTime() >= 0.9);
ASSERT_TRUE(elapsedTime() <= 1.1);

要么循环,要么重复适当的时间-大概您不想花几个小时来运行它,但是有几个电话...

相关问题