Google测试 - 课前

时间:2016-03-07 14:03:50

标签: c++ unit-testing googletest

我正在运行谷歌测试。

我需要像课前一样的东西。我有SetUp()TearDown()函数,但它们在每次测试之前和之后运行。现在我需要一些全局的东西 - 比如ctor,它只能在加载类时运行一次。

2 个答案:

答案 0 :(得分:14)

您可以在每个灯具类中定义静态成员函数void SetUpTestCase()void TearDownTestCase(),即在::testing::Test派生的每个类中定义。

在灯具中的所有测试运行之前和之后,该代码将仅针对每个灯具运行一次。

检查docs

答案 1 :(得分:6)

从类::testing::Environment继承并覆盖方法SetUpTearDown,这些方法将包含全局设置和拆除的代码。然后,在运行测试的可执行文件的主函数中,在调用::testing::AddGlobalTestEnvironment()之前调用函数RUN_ALL_TESTS()。有关更多信息,请查看文档:

https://github.com/google/googletest/blob/master/googletest/docs/advanced.md#global-set-up-and-tear-down