В тесте Google, как выполнить демонтаж перед лицом сбоев утверждений?

Я пытаюсь понять, как сделать TearDown() перед лицом сбоев ASSERT в Google Test.

Пример-пустышка ниже:

class TestFixture: public testing::Test 
{
protected:
  virtual void SetUp() 
  {
      // Do per test setup
  }

  virtual void TearDown() 
  {
      // Do per test teardown
  }

}

TEST_F(TestFixture, MyTest)
{
  ASSERT_TRUE(false);
}

Я пытаюсь добиться, чтобы TearDown() вызывался, даже если тест выдает ошибку утверждения. GoogleTest не вызывает TearDown() при выдаче утверждения. Как мне это сделать?


person vinodkone    schedule 19.03.2012    source источник


Ответы (1)


Поместите код установки в конструктор прибора, а код демонтажа — в деструктор.

person Rob Kennedy    schedule 19.03.2012