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

时间:2010-03-04 08:06:58

标签: c#

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

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

由于

8 个答案:

答案 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