Виктор Гляненко, QA-директор Saber Interactive
Автоматизация тестирования в целом полезная вещь, она позволяет переложить рутинные задачи на плечи автотестов, а не человека. Но, как всегда, есть нюансы. Над проектами обычно довлеют сроки и стоимость выделенных ресурсов. Часто приходится реализовывать довольно короткие по времени проекты. Короткий срок разработки связан с тем, что нужно проверить, заинтересует игра игроков или нет, есть ли смысл ее дальше разрабатывать и развивать. Такие проекты могут делать небольшие команды, состоящие из нескольких человек. У нас были проекты, на которых мы хотели попробовать автоматизитировать тестирование: проверить, что игра запускается на разных моделях устройств, и выполнить простые проверки UI. В итоге обнаружилось, что на разработку и поддержание автотестов тратится значительное количество ресурсов, которые можно подключить к разработке игровых механик, улучшив проект, или сфокусироваться непосредственно на тестировании сложного функционала, который быстро автотестами не покрыть.
Внедрение автоматизированного тестирования имеет и другие подводные камни, так как нужно учитывать инфраструктуру, на которой автотесты будут разворачиваться. Ее нужно поддерживать, и для этого тоже нужны люди. Помимо инфраструктуры нужно учитывать и то, в каком виде будут приходить результаты тестирования, может потребоваться дополнительный анализ и разные виды отчетов, на разработку которых тоже потребуются человеческие ресуры. На одном из наших крупных проектов, где мы решили применить автоматизированное тестирование, по первоначальным планам требовались два человека, за год команда выросла до семи человек, а новые задачи и пожелания по автотестам росли как снежный ком. В итоге пришлось «заморозить» систему автотестов и оставить тот функционал, что уже был реализован в работе, а людей подключить к более приоритетным задачам. Ошибки при планировании реализации автотестов привели к тому, что затраты на их использование превысили очевидную пользу и экономию ресурсов.
Это не означает, что автоматизированное тестирование не должно применяться в разработке игры. Но нужно тщательно следить за балансом ресурсов и использовать здравый смысл.
Повторное использование
В отличие от других сфер разработки ПО, в игровой индустрии принято создавать новый код для каждого нового проекта. Даже если движок или основной код используется повторно для новой игры, он подвергается модификации, исправлениям и улучшениям. В связи с этим повторное использование автоматизированного тестового кода из одной игры в другой также затруднительно, а мануальный тестировщик с большим опытом может использовать свои наработки и даже готовые тест-кейсы.
Ошибка ожиданий
Как только заходит разговор о внедрении автоматических инструментов тестирования, некоторые руководители считают этот процесс чем-то вроде технологического прорыва и начинают ожидать этого самого прорыва в совокупности с ускорением времени работы и снижением издержек. При этом они очень быстро теряют энтузиазм, когда им говорят о значительных финансовых и временных затратах на внедрение и освоение инструментов автоматизации.
Масштаб автоматизации
Масштабная автоматизация потребует фундаментальных изменений в работе всей компании. Для некоторых компаний это само по себе делает ее невозможной. Автоматизация – это долгосрочное вложение, которое может не окупиться в первых нескольких создаваемых играх после внедрения системы. Все ключевые сотрудники компании должны понимать, что выгода от применения автоматизации может быть далеко в будущем.
Наконец, автоматизация тестирования – форма разработки ПО. Она не ограничится простым приобретением готового продукта или инструмента, который просто включается в процесс разработки и сокращает время выявления и устранения ошибок или улучшает играбельность.
Человеческий фактор
Даже самые лучшие автотесты неспособны заменить тестировщика-человека. Например, крайне маловероятно появление алгоритма, способного автоматически определить, достаточно ли определенная часть игры интересна для игрока, или заменить фокус-группу, дающую обратную связь об играбельности и балансе игры. Способность находить новые способы «сломать» игру выделяет лучших тестировщиков среди просто хороших. Придумывать новые и оригинальные способы нажимать комбинации клавиш и кнопок так, как это никогда не задумывали дизайнеры и программисты игры, чтобы обнаружить, что игра может выйти из строя в самый неожиданный момент, сможет только человек.
Суммируя вышесказанное, я хотел бы сказать, что подход к автоматизации тестирования в игровой индустрии должен быть взвешенным и осмысленным. Хотя автоматиация потенциально способна сэкономить разработчику много человеко-часов на тестирование продукта, она также может стать причиной огромного разочарования и фрустрации.
Глава 05. Общее у них только одно – все они разные
Мы плаваем в разных морях, но выходим на тот же берег.
• В чем заключаются особенности тестирования игр на разных платформах?
• Мобильные устройства, игровые консоли. PC, облачные платформы, VR и AR. Зачем тестировщику нужны инструменты?
• Какие инструменты используются при тестировании?
В современном мире игры стали неотъемлемой частью поп-культуры, предоставляя активное развлечение миллионам людей по всему миру. Игровые платформы развивались и эволюционировали с невероятной скоростью, подарив любителям гейминга не просто развлечение, а целый мир возможностей для исследования, общения и самовыражения. Из обычных аркадных автоматов и домашних консолей игровая индустрия шагнула далеко вперед, обогащаясь новыми устройствами и технологиями.
Классические игровые консоли
Игровые консоли традиционно были сердцем видеоигровой индустрии. Системы типа PlayStation и Xbox предлагают разнообразный спектр игр для всех возрастов и жанров. Эти платформы постоянно конкурируют между собой, стремясь предложить геймерам лучшую графику, инновационное управление и эксклюзивные игровые тайтлы.
Игровая консоль PlayStation 5
Портативные консоли
Процветание мобильных устройств привело к увеличению популярности портативных игровых консолей (таких как Nintendo Switch, Steam Deck и др.) с их способностью переключаться между стационарным и портативным режимами, а также переписало правила мобильного и домашнего гейминга. Платформы прошлого, такие как PlayStation Vita и Nintendo DS, также внесли свой вклад в развитие портативного гейминга.
Портативная консоль Steam Deck
PC-гейминг
Компьютеры остаются подлинными ветеранами игрового мира, предоставляя игрокам не только мощности для запуска самых сложных игр, но и доступ к широкому ассортименту ПО для редактирования, моддинга и создания контента. PC-гейминг расцветает благодаря таким платформам распространения, как Steam, Epic Games Store и GOG, которые предлагают уникальные распродажи, эксклюзивные релизы и огромное сообщество игроков.
Мобильные устройства
Смартфоны и планшеты открыли эру мобильного гейминга. Благодаря доступности и удобству мобильные игры охватывают самую широкую аудиторию пользователей. Некоторые из игр, разработанные специально для мобильных устройств, стали культурными феноменами и показали, что мобильные игры могут быть столь же прибыльными и популярными, как и их консольные и PC-аналоги.
Облачные игровые платформы
Облачные сервисы проложили путь для стриминга видеоигр, позволяя игрокам наслаждаться высококачественным геймингом без необходимости владения мощным игровым оборудованием. Эти платформы потребовали от игровой индустрии переосмыслить традиционный подход к распределению и владению играми. На момент написания этой книги одной из самых популярных облачных игровых платформ в России является VK Play Cloud.
Виртуальная реальность (ВР, VR)
Технологии виртуальной реальности стали одним из самых захватывающих и инновационных направлений в игровой индустрии. VR-шлемы, такие как Oculus Rift, HTC Vive и PlayStation VR, переносят пользователей в полностью погружаемые 3D-миры и создают иллюзию реального присутствия в виртуальном пространстве. Игры для виртуальной реальности постоянно развиваются, начиная от простых аркад и заканчивая полноценными приключенческими и ролевыми играми. VR-технология также находит применение в сфере образования и профессионального тренинга, что говорит о ее потенциале выйти за рамки чисто развлекательного контента.
5.1. Мобильные устройства
К мобильным устройствам, как правило, относят следующие.
1. Смартфоны
2. Планшеты
3. Умные часы и браслеты
4. Умные очки и VR-шлемы
У каждого из подобных устройств есть довольно мощный процессор, сенсорный экран, достаточно большой объем оперативной памяти, мощный аккумулятор, современная OC и специфичные устройства, позволяющие подключаться к Интернету и ориентировать устройство в пространстве. По факту современные мобильные устройства – это компактные компьютеры, позволяющие использовать различные приложения и игры. Но у них есть свои особенности. Именно они составляют специфику работ по обеспечению качества и определяют отличия от тестирования игр для других платформ.
1. Диагональ и разрешение экрана
При огромном разнообразии смартфонов и планшетов разных производителей тестировщику приходится иметь дело с очень большим количеством разрешений экрана и его диагоналями для проверки корректности отображения как самой игры, так и пользовательского интерфейса (UI). При этом нужно помнить еще и про особенности различных аппаратов. Например, в Apple в какой-то момент решили, что очень стильно будет выглядеть «челка» на экране смартфона. И пока производители игр не стали думать, что с этим делать, она перекрывала важные элементы UI или объекты на экране в ряде игр, создавая трудности игрокам.