Unity 6.3
0 онлайн 77 гостей 3 в системе
Вход

Тесты режима редактирования и режима воспроизведения

Unity Test Framework идентифицирует тесты как тесты режима редактирования или тесты режима воспроизведения в зависимости от ссылок на их родительскую сборку.

Тесты режима редактирования

Тесты режима редактирования (также известные как тесты редактора) запускаются только в пространстве имен Unity Editor и имеют доступ к коду редактора и коду приложения времени выполнения. Таким образом, тестовые сборки режима редактирования могут ссылаться на код как в пространствах имен UnityEditor, так и UnityEngine.

С помощью режима редактирования тестов вы можете проверить любой из ваших Расширения редактора с использованием [UnityTest] атрибут. Тесты режима редактирования выполняются в EditorApplication.update цикл обратного вызова. Вы не можете запустить сопроцедуры в режиме редактирования тестов.

Вы также можете управлять входом и выходом из режима воспроизведения теста в режиме редактирования, позволяя тесту вносить изменения до входа в режим воспроизведения.

Тесты режима редактирования должны иметь определение сборки что ссылается nunit.framework.dll и имеют Редактор в качестве единственной целевой платформы:

assembly
    "includePlatforms": [
        "Editor"
    ],

Тесты режима воспроизведения

Вы можете запустить тесты режима воспроизведения в Проигрывателе или внутри Редактора. Тесты режима воспроизведения позволяют вам проверить код приложения в режиме выполнения, и тесты запускаются как сопутствующие процедуры, если они помечены атрибутом [UnityTest].

Тесты в игровом режиме должны соответствовать следующим условиям:

  • Испытания должны иметь собственные определение сборки со ссылкой на nunit.framework.dll.
  • Тестовые скрипты должны находиться в папке рядом с файлом .asmdef.
  • Тестовая сборка должна ссылаться на любые дополнительные сборки, содержащие тестируемый код.
assembly
    "references": [
        "NewAssembly"
    ],
    "optionalUnityReferences": [
        "TestAssemblies"
   ],
    "includePlatforms": [],

Примечание: Тестовая сборка не может ссылаться на предопределенную сборку Assembly-Csharp.dll. Необходимо переместить тестируемый код в пользовательскую сборку, на которую ссылается тестовая сборка. Дополнительные сведения см. в разделе Создание активов сборки.

РЕКОМЕНДАЦИИ

Используйте атрибут NUnit [Test] вместо [UnityTest], если только:

  • Вам нужно инструкции для Редактора в режиме редактирования тестов
  • Вам нужно пропустить кадр или подождать определенное время в режиме воспроизведения тестов.

Дополнительные ресурсы