Тест Google - использование «SetUpTestSuite» не работает - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь написать набор тестов, который выполняет операцию «Настройка» на уровне набора тестов.

Сначала я попытался написать простую программу, чтобы попытаться заставить ее работать, но у меня нетесли повезет, вызов метода «SetUpTestSuite» будет вызван.

#include <gtest/gtest.h>
#include <iostream>

class MyTest : public ::testing::Test
{
protected:
    static void SetUpTestSuite() {
        std::cerr << "TestSuiteSetup" << std::endl;
    }

    static void TearDownTestSuite() {

    }
};

TEST_F(MyTest, Case1) {
    std::cerr << "TESTING" << std::endl;
}

int main(int argc, char* argv[])
{
    ::testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

Когда я запускаю это, я получаю:

[==========] Running 1 tests from 1 test cases.
[----------] Global test environment set-up.

[----------] 1 test from MyTest
[ RUN      ] MyTest.Case1
TESTING
[       OK ] MyTest.Case1 (0 ms)
[----------] 1 test from MyTest (0 ms total)

[----------] Global test environment tear-down
[==========] 1 tests from 1 test cases ran. (0 ms total)
[  PASSED  ] 1 tests.

По какой-то причине SetUpTestSuite() никогда не вызывается.


Я читал раздел Совместное использование ресурсов между тестами в одном и том же наборе документации Google Test, но не могу понять, что я делаю неправильно.

Есть ли что-то, чего мне не хватает?


Примечание: я использую gtest v1.6.0 - это единственный пакет, который был доступен в моем репозитории Red Hat RPM моей компании.

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Изменение не было выпущено.Документы, похоже, актуальны в ветке Master, а не в выпущенной версии.

0 голосов
/ 01 февраля 2019

Документация представляется неправильной.Эти методы должны называться SetUpTestCase() и TearDownTestCase().По крайней мере, в Google Test 1.8.0.

...