Механика запуска тестов в GTest

Я занимаюсь отладкой C++ кода, который использует фреймворк GTest и страдает от синглтонов и глобальных разделяемых данных. Меня мучает некоторое непонимание того, как это работает внутри. Пытался найти ответы на свои вопросы в документации, но не нашел

Мои вопросы таковы:

  1. Вот есть тесты, а в тестах случаи, как эти тесты и случаи связаны друг с другом во время запуска?
  2. Запускает ли GTest каждый тест/случай в отдельном потоке/процессе?
  3. Какова механика фикстуры и переопределяемого метода SetUp()? Например, если в приложении есть метод, который можно звать лишь один раз на запуск, могу ли я добавить вызов этого метода в SetUp() используемой фикстуры и быть уверенным, что каждый тест/случай будет запущен в отдельном процессе с однократным вызовом SetUp()?

Ответы (0 шт):