如果Google测试中的测试失败,如何打印某些内容?

时间:2014-07-08 04:26:13

标签: c++ googletest

我有很多ASSERT()EXPECT()的复杂测试。该测试检查一些字符串的属性,比如命令行。我希望打印这个字符串,以防测试以任何可能的方式失败。

我不想要:

  • << string放在每ASSERT()
  • 如果EXPECT()多次失败,请多次查看字符串。

我想做这样的事情:

TEST(MyTest, Test1) {
  ...
  if (HAS_FAILED()) { std::cout << string << std::endl; }
}

1 个答案:

答案 0 :(得分:2)

您可以使用HasFatalFailure()

TEST(FooTest, Bar) {
Subroutine();
// Aborts if Subroutine() had a fatal failure.
if (HasFatalFailure())
    return;
// The following won't be executed.
...
}

更多详情here