Страницы

Поиск по вопросам

воскресенье, 22 декабря 2019 г.

Как тестировать объекты со сцены юнити?

#unity3d #юнит_тесты


Все юнит тесты обычно находятся в папке Editor и не наследуют от MonoBehaviour. Как
протестировать элемент со сцены в юнит тесте или проще говоря как добавить элемент
сцены в юнит тест?
P.S. Как я понимаю искать элементы с помощью Find, FindGameObjectWithTag и т.д. не
совсем правильно.
    


Ответы

Ответ 1



Один из способов, как мне кажется, это просто создать новый пустой объект в тестируемом методе, добавив нужный компонент или инстанциировать нужный префаб и запустить тест? Пример: GameObject go = new GameObject(); go.AddComponent(); // do smth... Но... Unity Test Tools - пакет, с помощью которого можно протестировать объекты на сцене. Например к объекту прикрепляется компонент Assertion Component (он есессн будет Monobehaviour): В нём можно задать любые параметры, которые душе угодно: объект тестирования, параметры тестировани, с чем сравнивать, сколько должен длиться тест, в какой момент времени проверять (Start, Update, OnTriggerEnter и прочее) и многое другое. Документацию о нем можно почитать их доки: bitbucket.org/Unity-Technologies/unitytesttools/wiki/Home Ознакомиться можно также посмотрев небольшое видео в обучающих материалах на самом сайте Unity: https://unity3d.com/ru/learn/tutorials/topics/production/unity-test-tools. Там описан пример как с Unit test так и Integration test.

Комментариев нет:

Отправить комментарий