c# - nunit resharper 预期异常测试

标签 c# exception nunit resharper

我真的很喜欢 NUnit 的新(呃)测试预期异常测试的能力,即:

var ex = Assert.Throws<SomeException>(()=>methodToThrowException("blah"));

我发现的一个小问题是,要测试某种运算符重载或其他赋值类型的功能,我知道如何做到这一点的唯一方法是为编译器提供一个要赋值的变量,如下所示:

// test division operator "/"
var ex = Assert.Throws<PreconditionException>(() => { var ignored = nbr / m; });

这很紧凑,效果很好,但令人烦恼的是,Resharper 会发出警告,指出从未使用过忽略的变量。如果你像我一样喜欢使用 Resharper 视觉效果来帮助你一眼判断代码的质量,这会适得其反。 Resharper 在技术上当然是正确的,但是有没有办法告诉 Resharper 这是我的意图?我有一个包含很多此类测试的测试,所以 pragma 看起来很讨厌。

有什么建议(除了“克服它,伙计”)?

干杯

最佳答案

你可以自己写Throws采用 Func<object> 的方法相反,然后只写:

var ex = Assert.Throws<PreconditionException>(() => nbr / m);

然后将新方法提交给NUnit,等待下一次发布:)

关于c# - nunit resharper 预期异常测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1060571/

相关文章:

c# - 如何在我的单元测试项目中使用没有 .NET 5 的 RavenDB.RavenTestDriver 5+?

c# - 使用 HttpResponseMessage 查看错误

python - 是否可以全局覆盖 print() ?

javascript确定函数定义行号

c# - 使用最小起订量模拟静态类

c# - 在不访问源代码的情况下覆盖 NUnit 中的 ToString

c# - Controller 的自定义脚手架

c# - LINQ 还是其他?

ruby - 引发异常 : use instance or class?

c# - 在 C# 控制台应用程序中运行 NUnit 测试