У меня есть простой юнит-тест Unity, который проверяет, что мой CameraController MonoBehaviour перемещает позицию после обновления кадра:
[UnityTest]
public IEnumerator AfterOneFrame_CameraMovesRight()
{
var cameraController = new GameObject().AddComponent<CameraController>();
yield return null;
Assert.That(cameraController.transform.position.x, Is.EqualTo(5));
}
Но это не удается, экземпляр CameraController создается, но функция Update () никогда не выполняется.
Согласно документации, yield return null;
должно быть причиной этого?
Когда я запускаю свою сцену, камера прокручивается вправо (по 5 за раз), поэтому обновление CameraController() функция верна, она просто не вызывается во время теста.
(это тест EditMode)