Unity单元测试 Test测试物体的名字和UnityTest测试MonoScript脚本
[Test]
public void GameObject_CreatedWithGiven_WillHaveTheName()
{
    //一条龙直接往下的
    var go = new GameObject("MyGameObject");
    Assert.AreEqual("MyGameObject", go.name);
}

[UnityTest]
public IEnumerator TestMono()
{
    //需要等待
    yield return new MonoBehaviourTest<MonoSSS>();
}

public class MonoSSS : MonoBehaviour,IMonoBehaviourTest
{
    public bool IsTestFinished
    {
        get
        {
            if (index == 100) return true;
            return false;
        }
    }
    int index = 0;
        
    void Update()
    {
        index++;
    }
}


Test的测试方法是挺简单的,一般就是将对应需要测试的类实例化一下,然后调用你要测试的方法,最后Assert断言验证数据的正确性。

UnityTest测试的是一个MonoBehaviour的脚本,MonoBehaviourTest返回的是一个IEnumerator,然后等待MonoBehaviour测试的完成。

怎么识别MonoBehaviour脚本测试的完成,就是实现IMonoBehaviourTest接口的IsTestFinished,返回true就表示测试完了。


首页 我的博客
粤ICP备17103704号