我正在编写一个单元测试应用程序,我想让其中一种方法失败。为此,我将NULL参数传递给方法。但这会导致下游的崩溃转储。那么我们如何通过代码禁用崩溃转储生成?
我希望会有一些注册表设置,可以通过代码更改。
答案 0 :(得分:0)
我认为此处的要求不正确。程序本身无法捕获的信号很少。 SIGSEGV(当您访问无效内存时会引发/ NULL)是其中之一。没有操作系统会暴露出可以在程序中控制SIGSEGV的接口。那将是非常糟糕的操作系统设计。
最好重写单元测试,它应该只检查值(按照Joachim的建议),而不是使应用程序崩溃。崩溃测试属于系统测试,不属于单元测试范围。