看起来像C ++的Google Test(gtest)框架,以某种方式捕获了所有失败的断言,异常和分段错误。测试被标记为失败,但是测试套件本身会恢复并运行随后的测试。
这看起来很酷,只是gtest框架打印到控制台的诊断输出非常有限。 CLion IDE将提供更多信息,包括完整的堆栈跟踪和变量。关闭gtest“崩溃恢复”机制的简单方法吗?
我非常确定GTest不能“捕获”分段错误-它是OS中断程序,而不是程序中断自身。
要禁用捕获失败,您可以执行以下操作(来自documentation)
GTEST_CATCH_EXCEPTIONS
设置为零或使用--gtest_catch_exceptions=0
标志GTEST_BREAK_ON_FAILURE
设置为非零值,或使用--gtest_break_on_failure
标志第二个选项将在发生任何故障(不仅是逃脱的异常)时直接将您带入调试器交互模式。
您可以使用选项--gtest_catch_exceptions=0
运行测试二进制文件。这将导致测试在异常时崩溃
请勿将异常报告为测试失败。相反,允许他们使程序崩溃或引发弹出窗口(在Windows上)。
或者您可以将此环境变量GTEST_CATCH_EXCEPTIONS
设置为0;
gtest docs中提到了这些功能>