正如标题所述,我正在测试是否在私有方法内引发了异常,然后由公共void访问该异常。任何帮助将不胜感激。
答案 0 :(得分:0)
您可以使用Assert.Throws来检查是否引发了异常。如果未引发异常,则测试将失败:
var foo = new Foo();
Assert.Throws<MyException>(() => foo.DoSomething());
此测试要求抛出MyException
。如果引发了另一个异常(甚至来自MyException
的异常),则测试将失败。
如果要测试异常或从该异常派生的任何内容,则可以使用Assert.Catch:
var foo = new Foo();
Assert.Catch<MyException>(() => foo.DoSomething());