我的错误处理程序中有一些代码我需要针对实际错误进行测试。如何生成具有完整堆栈跟踪的错误,并且与运行时错误一样真实。
我正在使用异常的常规捕获。因此,在这种特殊情况下不需要特定类型的异常。
由于
答案 0 :(得分:21)
object m = null;
string s = m.ToString();
即时NullReferenceException
。
答案 1 :(得分:18)
怎么样?
throw new Exception("this is a test");
答案 2 :(得分:9)
您可以通过调用
来抛出任何类型的.Net异常throw new OutOfMemoryException();
throw new IndexOutOfRangeException();
throw new ArgumentNullException();
异常名称可以是任何dotnet异常。您甚至可以创建并抛出自己的特定异常。
要获取CLR例外列表,请在VS中单击调试菜单,然后单击例外菜单。
答案 3 :(得分:6)
即将出现一个DivideByZeroException!:
int i = 0;
int j = 1 / i;
答案 4 :(得分:1)
您可以生成空引用异常...或除零异常。
答案 5 :(得分:-1)
我建议您尝试使用模拟框架,例如Moq和Rhino Mocks然后传递你希望捕获的相关Exception。
答案 6 :(得分:-1)
throw new IndexOutOfRangeException();
答案 7 :(得分:-2)
如此优秀的老师除零?
5/0