使用ASSERT_DEATH时,有没有办法在应用程序终止后自动继续执行所有测试?

时间:2017-11-14 11:41:48

标签: c++ unit-testing googletest

我有一个单元测试,它以一种导致断言失败的方式来运行代码。当断言失败时,预计应用程序结束。

为了测试这实际发生了,我正在使用 EXPECT_DEATH ,它可以正常工作。

  1. 代码执行到达断言行
  2. 断言失败
  3. 程序完成
  4. 测试通过
  5. 问题是当程序完成时,有一个窗口报告程序停止工作,我需要单击“关闭程序”以继续测试。

    我需要这个窗口根本不弹出,测试继续而不需要按任何按钮。这可能吗?

    我在MS Windows上使用GCC。

1 个答案:

答案 0 :(得分:0)

在Windows中,您可以禁用 Windows错误报告功能,该功能会弹出不需要的窗口。坏消息是,在不同的Windows版本中需要以不同的方式进行此操作。但好消息是网路上有好人,他们已经很好地记录在案:) https://www.lifewire.com/how-do-i-disable-error-reporting-in-windows-2626074