如何使用googletest失败进入断点

时间:2013-04-03 07:48:46

标签: c++ visual-studio unit-testing debugging googletest

我最近使用命令行选项 gtest_break_on_failure 或通过定义 GTEST_BREAK_ON_FAILURE 环境变量,从googletest发现进入断点失败 - 选项

我使用 gtest_break_on_failure 尝试了一下。从命令行,我看到没有效果(说实话,我已经看到了VS2010将被注册为调试器的希望,并且不知何故神奇地会弹出并指向错误源。)

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

以某种方式可以在命令行中使用该选项吗?

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

1 个答案:

答案 0 :(得分:25)

从VS中,你可以将--gtest_break_on_failure添加到目标属性页面中的Command Args中,然后只需运行exe而不需要单步执行。

Property Pages showing Command Arguments

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