提供特定于 Unity 的约束类型以便与 NUnit 的 Assert.That 方法一起使用。
NUnit 允许测试编写者使用 Assert.That()
方法编写断言,其中第一个参数是被测对象,第二个参数描述对象必须满足的条件。这些断言通常可以用人类可读的样式表示,例如 Assert.That(3, Is.Not.EqualTo(2))
。
Unity 使用一些自定义的 Unity 特有约束类型来扩展 NUnit 的机制,并将此“Is”类声明为 NUnit 之上的叠加类。为了解决 NUnit 自己的 Is
类和 Unity 的此类之间的歧义,必须在 using 语句中显式声明此类,如下所示:
using NUnit.Framework; using UnityEngine.TestTools.Constraints; using Is = UnityEngine.TestTools.Constraints.Is;
class MyTestClass { [Test] public void MyTest() { Assert.That(() => { var i = new int[500]; }, Is.AllocatingGCMemory()); } }
AllocatingGCMemory | 声明一个约束使提供的委托分配 GC 内存。 |