我目前正在重写一些单元测试以使用 NUnit 3 而不是 NUnit 2,并且需要将一些断言更改为基于约束的断言。我有以下断言:
Assert.IsNullOrEmpty(result);
我已更改为:
Assert.That(result, Is.Null.Or.Empty);
但是,我对断言时的可读性并不完全满意IsNotNullOrEmpty
:
Assert.That(result, Is.Not.Null.And.Not.Empty);
我目前的建议是创建以下静态类:
public static class Text
{
public static EmptyConstraint IsNullOrEmpty => Is.Null.Or.Empty;
public static EmptyConstraint IsNotNullOrEmpty => Is.Not.Null.And.Not.Empty;
}
用法:
Assert.That(result, Text.IsNotNullOrEmpty);
这以引入自定义约束为代价提供了更好的可读性。有没有做出相同断言的标准方法,还是应该继续使用Is.Not.Null.And.Not.Empty
?