我试图使用nunits的异常处理的新途径,但我发现很难找到它的信息,以及如何也起订量使用。

我现在所拥有的起订量抛出一个异常在模拟的方法,但我不知道如何使用NUnit赶上它,看看它。

有帮助吗?

解决方案

有几种不同的方式来做到这一点;我用Assert.Throws。

var exception = Assert.Throws<YourTypeOfException>(()=> Action goes here);

e.g。

var exception = Assert
                .Throws<ArgumentNullException>(()=> new ChimpPuncher(null));

您可以再进一步查询异常对象,如果你想,e.g。

Assert.That(exception.Message, Text.Contains("paramname");

其他提示

要提及的最佳方式是:上述试验方法[ExpectedException(typeof(ApplicationException))]

为什么你不能封闭模拟的方法调用在try / catch块,并捕捉特定的异常被抛出?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top