0

也许有人能够解释我为什么在运行单元测试时遇到未处理的异常?不应该环境来处理所有异常并且只是将测试设置为失败?

这可能与单元测试通过 C++/CLI 调用非托管代码这一事实有关?

提前致谢。

编辑:只是为了澄清,问题没有例外。问题是异常不会导致单元测试失败并执行下一个单元测试。

替代文字

4

1 回答 1

1

没有什么比 AccessViolation 异常更糟糕的了,只有 StackOverflow 更糟。我可以弄清“通信”,非托管代码可能在 CLR 和测试运行程序都不知道的线程中运行。那里的选择非常有限,没有办法让这样的线程简单地抓住存在。

这是一个内存损坏问题,CRT 中的调试分配器用 0xfeeefeee 填充释放的内存块。顺便说一句,这不是犹太教,你应该只在发布版本上运行单元测试。

于 2010-11-26T21:21:43.323 回答