Как мне написать модульные тесты для классов, которые наследуются от Monobehaviour в Unity? - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь написать модульные тесты в единстве.В настоящее время я следую примеру, предоставленному Unity Test Runner:

Например, предоставленному в документах Unity:
exmple provided in Unity docs

Это пример шаблона IЯ использую для выполнения моего фактического теста:

[UnityTest]
public IEnumerator ExampleTest()
{
    var test = new GameObject().AddComponent<MyScript>();

    test.testField = 100;

    yield return null;  

    Assert.AreEqual(100,test.testField);
}

Когда я пытаюсь запустить аналогичный тест с этим шаблоном EXACT в Unity, он выдает эту ошибку:

object reference not set to an instance of object

Есть ли что-нибудь, что я могу сделать, чтобы решить эту проблему?

Исключение в Unity:

Exception Output

1 Ответ

0 голосов
/ 02 апреля 2019

Исходя из того, что вы пытаетесь протестировать, итератор на самом деле не нужен

[Test]
public void ExampleTest() {
    //Arrange
    var expected = 100;

    var test = new GameObject().AddComponent<MyScript>();

    test.testField = expected;

    //Act
    var actual = test.testField;

    //Assert
    Assert.AreEqual(expected, actual);
}

Ссылка Написание и выполнение тестов в Unity Test Runner

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...