对于单元测试,我希望使用NUnit中的Range attribute
来测试范围内函数的输入。该范围的下限和上限被编码为(Singleton模式)类的不变属性。我想用类属性指定Range attribute
的出发点和落脚点,是这样的:对[Range]属性使用类常量
[Test]
public void sometest([Range(MyClass.LOWER_LIMIT,MyClass.UPPER_LIMIT)] int var)
{
//Do something and assertive with the nice variable
}
然而,这种方法是行不通的。虽然从文档本身并不清楚,但似乎Range attribute
必须提供常量变量。虽然我的类常量是只有被定义的静态属性,但它确实捕获了一个常量变量。
我发布并回答了这个问题,但这真的是在NUnit中根据类常量设置范围参数的方法吗?还是有更优雅的解决方案?