C#如何快速生成正确的错误以进行测试

JL.*_*JL. 12 c#

我的错误处理程序中有一些代码我需要针对实际错误进行测试.如何生成具有完整堆栈跟踪的错误,并且与运行时错误一样真实.

我正在使用异常的常规捕获.因此,在这种特殊情况下不需要特定类型的异常.

谢谢

Kyl*_*ndo 24

object m = null;
string s = m.ToString();
Run Code Online (Sandbox Code Playgroud)

瞬间NullReferenceException.

  • 为什么不只是'抛出新的NullReferenceException("用于测试目的");' ? (3认同)

Sve*_*lov 19

关于什么

throw new Exception("this is a test");
Run Code Online (Sandbox Code Playgroud)


Set*_*ker 9

您可以通过调用抛出任何类型的.Net异常

throw new OutOfMemoryException();
throw new IndexOutOfRangeException();
throw new ArgumentNullException();
Run Code Online (Sandbox Code Playgroud)

例外名称可以是任何dotnet例外.您甚至可以创建并抛出自己的特定异常.

要获取CLR例外列表,请在VS中单击调试菜单,然后单击例外菜单.


MPr*_*ard 7

一个DivideByZeroException即将出现!:

int i = 0;
int j = 1 / i;
Run Code Online (Sandbox Code Playgroud)