c++ - 每个类仅在 Gtest 中调用一次代码

标签 c++ googletest

我使用 gtest 作为我的测试框架。我正在寻找一个仅被调用一次的特定函数。

到目前为止,我已经看到了SetUp以及该类的构造函数。但似乎每次测试他们都被叫去。据此example ,构造函数在哪里,

You can do set-up work for each test here

让我相信每个测试用例都会调用一次。对于SetUp函数,

Code here will be called immediately after the constructor (right before each test).

这是否意味着每次测试都会调用两者?如果是这样,我可以在哪里放置在测试类的生命周期内仅调用一次的代码?

最佳答案

使用Test suite setup :SetUpTestSuite()

是的,每个测试方法都会调用构造函数和 SetUp() 方法。在 GTest 中,测试函数作为 Test Case 类的子类实现。这就是为什么在执行其每个子级之前自然调用测试用例构造函数的原因。看这个FAQ question关于使用什么:构造函数或 SetUp()。

关于c++ - 每个类仅在 Gtest 中调用一次代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29968219/

相关文章:

c++ - 当控制台窗口未处于焦点时忽略按键 C++ (Windows)

c++ - C++ unordered_map 的 rehash() 和 reserve() 方法有什么区别?

f# - Visual Studio 2013 预览版、Google Test Runner 无法加载文件或程序集 F#

c++ - CMake 中的 OpenCV 和 Gtest 冲突

c++ - Google 测试 - 构造函数声明错误

类似于c++ map的java库

c++ - 在合并排序 C++ 中使用合并时的随机值

c++ - 谷歌测试的 FFF 假函数

c++ - CLion格式化程序中断MOCK_METHOD行

c++ - 对于具有抛出复制构造函数和 noexcept 按值复制赋值的类,is_nothrow_copy_assignable 的值是多少?