Тесты PlayMode и Unity Cloud Build

Если я включу тесты Unity PlayMode в папку Editor, они не появятся в Unity. Это почему? Это проблема для меня, потому что, если я храню эти тесты прямо в моем каталоге Assets, я получаю эту ошибку с Unity Cloud Build:

ошибка CS0246: не удалось найти тип или имя пространства имен UnityEditor. Вам не хватает ссылки на сборку?

В своих тестах PlayMode я ссылаюсь на пространство имен редактора unity в своих *.cs тестовых файлах: using UnityEditor;

Я нашел обходной путь, заключив директиву предварительного компилятора во все мои *.cs тестовые файлы PlayMode:

#if UNITY_EDITOR
// Code in between.
#end if

Но это лучший подход? Что на самом деле здесь происходит и как лучше всего справиться с этой ситуацией с помощью Unity Cloud Build, когда вам нужно использовать пространство имен UnityEditor внутри теста PlayMode?


person Alexandru    schedule 16.10.2017    source источник


Ответы (1)


В случае, если вы используете пространство имен редактора, тест должен быть EditorTest. Вы не сможете вызывать скрипты редактора из игрового режима Unity, поэтому тест Play Mode учитывает это.

person Javier Bullrich    schedule 05.10.2018