我们的项目使用 Boost.Test 进行单元测试。当我们的测试用例发生意外异常时,我们也希望获得 minidump,因此我们已经开始集成 Google Breakpad 来编写 minidump。
看起来 Boost.Test 正在拦截用户测试中所有抛出的异常——我假设是因为 Boost 测试用例用 try / catch 包装了每个函数,如果抛出意外异常,单元测试就会失败。这可以防止 Breakpad 异常处理程序触发和写入小型转储。
是否有可能让 Boost.Test 不仅在单元测试中捕获和失败意外异常?而是让异常未经处理(或重新抛出),以便可以触发 Breakpad 或其他异常处理程序来编写小型转储?