C# NUnit抛出的正确语法
我需要编写一个测试,验证创建一个对象并传入null参数是否会引发C# NUnit抛出的正确语法,c#,.net,nunit,C#,.net,Nunit,我需要编写一个测试,验证创建一个对象并传入null参数是否会引发ArgumentNullException 这就是我所拥有的: [Test] public void ThrowsOnNullDependency() { Assert.Throws(() => new FileService(null), Throws.Exception.TypeOf<ArgumentNullException>()); } [测试] public void ThrowsOnNullD
ArgumentNullException
这就是我所拥有的:
[Test]
public void ThrowsOnNullDependency()
{
Assert.Throws(() => new FileService(null), Throws.Exception.TypeOf<ArgumentNullException>());
}
[测试]
public void ThrowsOnNullDependency()
{
Assert.Throws(()=>newfileservice(null),Throws.Exception.TypeOf());
}
我得到了以下例外。我看过一些不同的网站,所以答案似乎都使用了NUnit的不同功能和语法。使用NUnit3检查某事物是否引发异常的正确方法是什么
CS1503参数2:无法从“NUnit.Framework.Constraints.ExactTypeConstraint”转换为“NUnit.Framework.TestDelegate”
CS1660无法将lambda表达式转换为类型“IResolveConstraint”,因为它不是委托类型
如果您只是想检查是否引发了异常,则以下任一项都可以工作:
Assert.Throws<ArgumentNullException>(() => new FileService(null));
Assert.Throws(typeof(ArgumentNullException), () => new FileService(null));
为什么不将ExpectedException属性添加到测试方法中,因为该属性在NUnit 2中被删除,而我使用的是NUnit 3。为了澄清问题,该属性出现在NUnit 2.x中,但在NUnit 3中被删除
Assert.That(() => new FileService(null), Throws.TypeOf<ArgumentNullException>());