26

我最近使用命令行选项gtest_break_on_failure或通过定义GTEST_BREAK_ON_FAILURE环境变量从 googletest 中发现了故障进入断点选项。

我尝试使用gtest_break_on_failure。从命令行,我没有看到任何效果(老实说,我看到希望 VS2010 会被注册为调试器,并且会以某种方式神奇地弹出并指向错误源)。

在 VS 环境中使用它作为命令行参数失败的断言触发了中断,但调用堆栈不包括导致失败的测试方法。我找到了步骤 (F10) 的工作,直到我到达我的测试代码,但这似乎并不方便。

是否可以从命令行使用该选项?

有没有人建议如何在环境中获得正确的调用堆栈?

4

1 回答 1

38

在 VS 中,您可以添加--gtest_break_on_failure到目标属性页中的 Command Args,然后只需运行 exe 而无需跨步。

显示命令参数的属性页

从命令行,您应该能够运行带有标志的 Debug 可执行文件,--gtest_break_on_failure --gtest_catch_exceptions=0这应该允许您在测试失败时闯入 MSVC 调试器。

于 2013-04-03T20:49:54.593 回答