Насколько я понимаю, вы хотите понять автоматизацию тестирования в Unity.
Инструменты тестирования единства
Это должен быть ваш метод goto, но прежде чем копаться в том, как, я рассмотрю причину.
Предпочтительный способ выполнить любую форму автоматического тестирования - это сделать это в среде, максимально приближенной к производственной. Использование чего-то вроде инструментов тестирования Unity (живущих в редакторе Unity) звучит как плохая идея для тех, кто писал обычные интеграционные тесты.
Зачем? Потому что при любом интеграционном тестировании вам нужно наименьшее количество лишних вещей, затопляющих ваше приложение, которых нет, когда пользователь открывает его. Unity Editor может иметь другую производительность или поведение по сравнению с версией iOS (например).
Итак, зачем тогда использовать Unity Test Tools (UTT)?
Основная причина - удобство. И Unity Editor, и UTT построены на простоте и наглядности в использовании. Вам будет легко писать тесты, связывать их со своей конкретной игрой и понимать, когда они терпят неудачу.
Как насчет различий в поведении между Unity Editor и производством?
В конце концов, Unity Editor - это оболочка для вашего приложения. Это означает, что между редактором и производством будут некоторые различия. Но, если оставить в стороне интеграционное тестирование, редактор Unity уже давно является оберткой. Это зрелая платформа, на которой построены тысячи игр. Результаты, полученные при выполнении интеграционных тестов в редакторе, будут очень точными.
В приведенном вами примере сценария все, кроме первого элемента, может быть легко подтверждено с помощью Unity Test Tools. Вы можете открывать сцены и проверять поведение, как и любые другие интеграционные тесты.
Я предлагаю написать большинство (если не все) ваших тестов с использованием UTT. Чтобы добавить совместимость с инструментами непрерывной интеграции (например, Jenkins), вы можете запустить их из консоли, используя аргументы командной строки .
Запуск приложения и ручное тестирование
Запуская приложение, вы не можете точно контролировать его в редакторе Unity. Чтобы проверить этот аспект вашей игры и многое другое, вы можете использовать некоторые базовые ручные тесты.
Вот как это сделать:
- Убедитесь, что ваша игра излучает какой-то сигнал, когда достигает определенных этапов, которые вас волнуют (или могут волновать). Регистрация в файл является наиболее распространенным подходом (с использованием автоматической встроенной регистрации или сторонней версии ).
- Периодически читайте и анализируйте журналы. Это может происходить вручную или быть написано с использованием вашего второго любимого языка сценариев.
альтернативы
Неудивительно, что, поскольку все, что связано с Unity, у нас есть более чем несколько альтернатив. Вот некоторые из них, которые вы можете рассмотреть:
В зависимости от масштаба и масштаба вашего проекта вы можете использовать один или несколько вариантов, которые я описал выше.