您好,我现在正在编写一个小而简单的统一单元测试,我似乎可以让测试失败,无论我做什么。Unity3d单元测试问题
我有一个简单MainMenuActions类,其改变面板的激活状态,它看起来像这样:
public class MainMenuActions : MonoBehaviour {
public GameObject panelMainMenu = new GameObject("Panel");
public void singlePlayerPressedFromMainMenu()
{
panelMainMenu.SetActive(false);
}
}
函数singlePlayerPressedFromMainMenu()被设置于在统一的按钮来改变面板的活动状态。
在我的单元测试我有以下几点:
using UnityEngine;
using UnityEditor;
using NUnit.Framework;
public class MainMenuTests {
[Test]
public void ClickingSinglePlayer_HidePanel_PanelHides()
{
//Arrange
var menu = new MainMenuActions();
//Act
menu.singlePlayerPressedFromMainMenu();
//Assert
menu.panelMainMenu.activeSelf.ToString().Equals("True");
}
}
该测试通过,但其假设失败。在调试时,我发现activeSelf确实被设置为false,但我的测试仍然通过。我错过了什么?
你没有做任何事情与'等于)的返回值('。 –