Качество гарантировано: Как в действительности выглядит работа тестировщика игр (Часть 2)
Первая часть здесь.
Старый видеролик с рекламой колледжа Уэствуд стал чем-то вроде шутки в мире видеоигр. Два парня, с комфортом устроившись на диване, убивают в хлам контроллеры, увлеченно играя на Sony PlayStation. Входит девушка и говорит: «Эй, ребята, вы уже закончили тестировать эту игру? У меня тут еще одна». «Мы только прошли третий уровень, графику надо немного подтянуть», — отвечает один из парней. Затем, развернувшись к своему другу, он улыбается, как будто только что выиграл в лотерею: «Не могу поверить, что мы играем в игры, и нам еще за это платят». «Знаю, – отвечает ему второй. – И моя мама говорила, что это мое увлечение видеоиграми ни к чему хорошему не приведет».
Именно так на протяжение долгого времени люди представляли себе жизнь тех, кто занимается тестированием компьютерных игр – не как работу по 5-9 часов в день, а как мечту всех подростков. Кто бы не хотел сидеть на комфортном диване и целый день играть в игры с небольшими перерывами на «подтягивание» графики в третьем уровне?
Обеденная катастрофа
Роб Ходжсон (Rob Hodgson), тестировщик видео игр, однажды проверял ранний билд мультиплеерной игры Fallen Earth в обеденное время, когда внезапно игровые серверы упали. Вскоре после этого они дали сбой еще раз. Озадаченный сотрудник попробовал воспроизвести баг, но его попытки не увенчались успехом — ни он сам, ни кто-либо другой из членов команды не смог понять, что же вызывает эту критическую ошибку.
«Все это казалось очень странным, — рассказывал мне Роб. — Мы попросили одного программиста проверить логи во время зависаний сервера, но после некоторого времени он лишь пожал плечами, будучи не в силах определить проблему. Выглядело все так, как будто кто-то достиг границ игрового мира, и наши серверы попросту задыхались и умирали в попытке отследить игрока. Однако никто из QA-команды не тестировал пределы мира, а дизайнеры ушли на обед!»
После некоторых размышлений Ходжсон и другие члены команды принялись расспрашивать других сотрудников, и в конце концов определили источник проблемы, укладывающий серверы на обе лопатки. «Оказывается, обеденный перерыв дизайнеров имел самое непосредственное отношение к этой проблеме. — говорит Ходжсон. — Дело в том, что один из парней, работающий в отделе дизайна, ставил свою лошадь на «автопилот», и уходил перекусить. Порой она просто находила на своем пути дерево и останавливалась. Но случались и дни, когда она уходила в бескрайние просторы за пределами игрового мира, в результате чего серверы просто сваривались вкрутую».
***
Начиная от игры Assassin’s Creed Unity и заканчивая версией Batman: Arkham Knight для ПК — складывается такое ощущение, что современные игры идут со значительно большим количеством проблем, чем раньше. Конечно же, легко взвалить всю вину на плечи отдела тестирования. И порой этому есть подтверждение — в частности, сразу несколько тестировщиков с большим опытом в QA-секторе сказали мне, что им довелось работать с равнодушными сотрудниками, которые небрежно относятся к своим обязанностям и выполняют их совсем не так, как следует. Два «матерых» тестировщика сообщили, что они не раз видели своих коллег курящими травку на обеденном перерыве практически каждый день, один из моих собеседников отметил, что некоторые даже носили темные очки в безуспешных попытках скрыть свои увлечения (судя по всему, чтобы не были видны расширенные зрачки — прим. переводчика).
В то же время много тестировщиков говорят, что им удается найти подавляющее множество (если не все) багов, которыми напичканы современные игры. Проблема, по их мнению, в том, что никто не исправляет ошибки.
Большинство тестеров работают, используя систему установления приоритетов, где каждому багу выставляется приоритет по критичности, важности его устранения. К багам с самым высоким приоритетам относятся ошибки, которые вызывают критический сбой в игре (вылет или зависание). Все остальные глюки причисляются к различным категориям в соответствии с уровнем важности — все зависит от позиции тестировщика. Как правило, продюсеры и программисты находят время на то, чтобы устранить критические ошибки, ведь с ними игре будет трудно даже пройти стандартную сертификацию. А вот мелкие ошибки и баги «средней тяжести» привязываются к игре, словно банный лист, будучи жертвами сжатых сроков завершения проекта и программистов, которые могут сделать ровно столько, сколько на это им было отведено времени — и не больше.
«Мы обычно приходим к выводу, что риск, сопутствующий исправлению бага, равно как и время, затраченное на решение проблемы, не стоят того — особенно когда мы находим ошибку, делая в игровом мире что-то совсем уж необычное или намеренно «ломая» игру», — рассказывает тестировщик, который работал над популярным ролевым боевиком The Elder Scrolls V: Skyrim. Последняя широко известна геймерам, будучи проектом с невиданным размахом и вместе с тем на редкость глючной игрой.
«Часть багов помечается как «не будут устранены» и «пофиксить после релиза». Последнее означает: «Было бы хорошо его устранить, но именно сейчас без этого можно обойтись. Вот если об этом баге люди будут писать на форумах и других онлайн-ресурсах, тогда, может быть, мы изменим его статус». Думаю, сейчас в игровой индустрии мы работаем со значительно большим запасом по времени, чем, скажем, 20 лет назад. Потому что сейчас разработчик/издатель просто может сказать: «Хорошо, мы приняли во внимание этот раздражающий баг, но его можно будет устранить с помощью day-one-patch (так называемый «патч первого дня», который выходит в день официального релиза игры — прим. переводчика)».
Игры становятся все больше, все масштабнее, развиваясь как в плане графики, так и в отношении геймплея и игровой механики. В результате этой эволюции генерируется все больше багов — в том числе тех, которые совсем непросто поймать или исправить. Студии разработки игр не могут изменить график выхода игры просто потому, что продукт наполнен глюками. Дата релиза продукта, приуроченная к какому-нибудь праздничному дню, не изменится, какая бы сырая игра ни была — если только издатель сам не согласится на перенос даты релиза, а это дорого ему обойдется. Поэтому, как сказали мне несколько тестировщиков, во время своей работы они сосредотачивают свои усилия на том, чтобы «выловить» именно те баги, которые не позволят им пройти обязательную сертификацию для выпуска на консоли. Обычно такое поведение подразумевает игнорирование части других, зачастую более значительных проблем в игре.
Как рассказывает один специалист, занимавшийся тестированием продукта на соответствие определенным требованиям для одного крупного издателя, у разработчиков и издателей есть независимые QA-команды. «Мы находили баг и отправляли максимум информации для разработчиков, которая позволяла воспроизвести его. Команда разработки определяла, действительно ли это баг, а затем или аннулировала его, или же пробовала исправить. Мы получали обновленный билд с указанным количеством исправленных ошибок, затем тщательно проверяли, действительно ли проблема была решена, после чего переходили к следующему багу. С точки зрения игрока такой алгоритм был сплошным разочарованием. Дело в том, что баги, которые портили игру пользователю, обычно помечались как «неправильные», потому что как раз они не влияли на выпуск игры. К вопросам об устранении таких багов разработчики могли вернуться позже — в том случае, если большое количество людей выражали свое недовольство той или иной ошибкой, замеченной в игре.
Другие тестировщики говорят, что по причине жестких дедлайнов они должны были выполнять только необходимый минимум действий и отыскивать только те бреши, с устранением которых игра смогла бы пройти сертификацию, после чего можно было начать печать дисков и обещать выход «патча первого дня».
«Если нас поджимали сроки, а в мультиплеере до сих пор было множество глюков, то мы фокусировались на тестировании одиночного режима игры и других офлайн-составляющих продукта», — написал мне один из тестировщиков по электронной почте. — «Производители консолей могут легко забраковать игру, если у нее наблюдаются серьезные проблемы с мультиплеером, однако при этом они позволяют нам отправить игру в печать при том условии, что компания обеспечит выход «патча первого дня» для устранения проблем A, B и/или C. Такая политика используется потому, что ни разработчик, ни производитель консолей не в состоянии гарантировать получение ожидающейся «заплатки», устраняющей проблемы в офлайн-компонентах игры, ведь такие режимы не требуют интернет-подключения (геймер может играть в одиночном режиме без подключения к сети и материть разработчиков, не ведая о выходе патча — прим. переводчика). Поэтому мы работали над устранением тех багов, которые имели отношение к офлайн-содержимому, шлифуя лишь эту составляющую игры для успешного прохождения процедуры сертификации и осознавая, что в мультиплеере есть ошибки. А уже к моменту выхода игры мы старались подготовить патч, который должен устранить известные нам баги. К сожалению, это распространенная практика, которая зачастую применялась в условиях нереальных сроков завершения проекта и возникающей в результате этого слишком большой рабочей нагрузки. Обычно именно вследствие такого поведения (а не низкой квалификации команды разработчиков и тестировщиков) в игре оставалось множество багов».
Порой баги намеренно оставляют в игре по той или иной причине, непонятной для людей со стороны. Как пишет один тестировщик, работавший для американского подразделения легендарной игровой компании Nintendo, еще до международного выхода игры им удалось отловить известный баг, связанный с действием Sky Drop в игре Pokémon Black and White, однако к этому моменту уже состоялся релиз тайтла в Японии, поэтому компания вместо того, чтобы исправить глюк, решила оставить его в игре для сохранения паритета. В то же время тестировщик отмечает, что, помимо странной политики, Nintendo создала внутренний стандарт тщательной записи каждого бага, в соответствии с которым тестировщиков, выполняющих сабмит, просят приложить соответствующий видеоролик, который наглядно показывает «природу» найденной ошибки: «Мне кажется, это отлично способствует укреплению их репутации как компании, создающей качественные игры».
Объяснение другого специалиста, который занимается проверкой продукта на соответствие определенным требованиям, по поводу возрастающей сложности тестирования наверняка разозлит геймеров еще больше, чем политика издателей. «Все дело в DLC», — говорит тестировщик.
«Представим, что у нас есть игра с 40 DLC (элементами загружаемого контента). Даже если представить, что некоторые или даже все из этих 40 пакетов просто открывают скрытый контент, изначально размещенный на диске, мы все равно должны протестировать каждую возможную комбинацию этих 40 частей:
- во всех игровых режимах;
- используя различные физические носители для хранения информации (скажем, 20 DLC расположено на жестком диске, 15 — на USB-накопителе, 5 — на картах памяти, и т.д.);
- сравнивая пакеты, установленные у владельца игры, с другими DLC, активированными у его соперников в мультиплеере;
- проверяя надлежащее поведение игры в том случае, если у какого-то придурка все DLC хранятся на внешнем накопителе, и он вдруг решает отключить это устройство;
- с каждым обновлением игры (1.01, 1.02 и т.д.);
- с различными файлами сохранений;
- и т.д. и т.п.
В итоге это может привести (и приводит) к моменту, когда задача протестировать все возможные комбинации и сценарии становится физически невыполнимой для человека. Сложность здесь возрастает в геометрической прогрессии с добавлением новых переменных».
В результате нынешнюю ситуацию с тестированием можно описать в двух словах: все сложно. Особенно трудно тестировщикам работать с мультиплеерными играми: даже сотни тестеров порой не смогут воспроизвести такие баги, которые могут «словить» сотни тысяч людей, неустанно палящих в пришельцев на игровых серверах. И даже при том, что некоторые тестеры говорят, что сейчас разработчики более тесно и плодотворно сотрудничают с QA-командой, чем в прошлом, никто не в силах изменить нереальных дедлайнов.
«Устанавливаемые сейчас сроки завершения проектов абсурдны, — рассказывает один бывший тестировщик. — Судя по всему, большинство людей просто не понимают, что даже для игры, которая находится в разработке, скажем, 3 года, лишь половину из этого срока можно назвать временем полноценного производства. Лишь 9 месяцев игру тестируют, из них только 3 месяца тестирование идет в условиях максимальной загрузки QA-команды. В это время нам могут и вовсе закрыть доступ к игре, а к тому моменту, когда мы можем предоставить информацию по поводу продукта, игра уже получает бета-версию. Здесь я немного преувеличиваю, если говорить о больших известных тайтлах, но для большинства проектов, с которыми я работал, это вполне реальная ситуация. Когда QA-отделу наконец позволяют заговорить, оказывается, что на должную реакцию и соответствующие действия просто нет времени».
Прощание без обид
Рассказывает один бывший тестировщик: «На одном из проектов мне довелось работать в комнате с множеством других тестировщиков — эдакий большой «загон». Большинство из них выполняло свою работу на основе временного договора. Я сидел рядом с людьми, которые тестировали одну игру годами и были чертовски измучены этой работой, но продолжали работать, потому что у них не было другого выбора, они все еще надеялись. Насколько я помню, только двое или трое сотрудников из сотен тестировщиков получили постоянную работу. Нам регулярно приходили снисходительные письма такого рода: «Поздравляем! Мы только что заработали 8 часов отпуска!». Было такое ощущение, словно мы маленькие дети, а учителя рисуют нам на ладошке звездочку за прилежное поведение. Лично мне это было совершенно не нужно. Лучше проставьте вашу похвалу в платежную ведомость.
Тем временем на корпоративной парковке каждые пару месяцев появлялись новые, яркие автомобили, словно сошедшие с обложек дорогих журналов. Стоимость каждой из этих тачек, вероятно, была выше общей суммы, которую четверо или пятеро тестеров из нашей команды зарабатывали за год. Компания то и дело устраивала вечеринки для своих постоянных сотрудников. Когда ты усердно работаешь и несмотря на это не можешь позволить себе новую одежду, а совсем рядом происходят такие вещи, это сильно давит и угнетает. Как только состоялся релиз игры, по отделу тестирования прокатилась волна увольнений. Думаю, около 100 человек потеряли работу, но я не знаю точных цифр. Знаю только, что QA-отдел был практически стерт из структуры компании. Спустя несколько часов после того, как охрана вывела нас с территории компании, грянула вечеринка по поводу долгожданного выпуска продукта.
В то время в моей жизни случилось много плохого. Но я встретил и множество хороших людей, которые знали, как тяжело приходилось нам, временным работникам, — по этой причине хорошие люди сами покидали компанию. Политика компании разочаровывала каждого, с кем мне довелось там поработать. Меня перебрасывали между отделами, в итоге перед уходом я попал в маленькую команду с большой загрузкой. Но я многому научился и познакомился с действительно хорошими людьми. Когда я рассказал своим коллегам об уходе, никто не обижался на меня. Наоборот, члены команды практически в открытую одобрили мой шаг, словно я сказал им, что бросаю пить или что-то в этом роде».
Можно ли построить успешную долгосрочную карьеру в QA? Или же эта сфера навсегда останется средством для достижения чего-то большего, эдаким транзитным пунктом для перехода в более интересные секторы игровой разработки?
Во время подготовки этой статьи я переговорил примерно с 60 тестировщиками, и только четверо из них сказали, что рассматривают возможность долгосрочной карьеры в QA. Многие использовали эту область для того, чтобы «перепрыгнуть» на должность продюсера или дизайнера в игровых компаниях, другие же работали тестировщиками на протяжении нескольких месяцев или лет, после чего сдавались и переходили в другие, более прибыльные рабочие области. Те же, кто чувствует в себе силы, чтобы остаться и преуспеть в тестировании, может попробовать себя в роли менеджера в QA-отделе — той специализации, где умение управлять другими людьми куда более важно, чем помощь в создании видеоигр. Для некоторых это, впрочем, не приносит ожидаемого удовлетворения, особенно учитывая тот факт, что стереотип о юных, незрелых, небрежных в работе тестировщиках зачастую соответствует действительности.
«Сразу же после начала работы на позиции менеджера, управляющего командой, ты получаешь такой опыт, к которому никого нельзя подготовить заранее», — рассказывает умудренный опытом тестировщик. — Тестеры приходят на работу в пижамах, устраивают друг другу сексуальные домогательства, крадут вещи… Даже такая элементарная вещь, как заказ еды может стать для менеджера настоящим испытанием. QA — это рабочая область, явно смещенная в сторону молодых «специалистов». Команда, которая состоит сплошь из 18-19-летних ребят — совершенно обычное явление, и зачастую это их первая серьезная работа. Управление такой командой — настоящее испытание для менеджера, которому приходится иметь дело с молодыми неокрепшими личностями и бушующими гормонами».
Несколько опытных игровых разработчиков рассказали мне о работниках, которые ценятся выше, чем руководитель QA-отдела. Это те, кто знает, как правильно написать отчет по выловленному багу, как сконцентрироваться на работе с критическими ошибками вместо поиска мелких глюков, как работать с другими людьми для достижения максимальной продуктивности и избегать простофиль. Такие люди редко встречаются в области QA — сочетание низких зарплат и плохого отношения к сотрудникам отбивает желание работать в этой сфере у многих тестировщиков задолго до того, как они получат надлежащий опыт и научатся полезным вещам.
Еще один бывший тестер по имени Джеймс, который попросил не писать свою фамилию, рассказал следующее: «Размышляя о своем уходе, я попросил моего менеджера, помощника продюсера игрового проекта, уделить мне пару минут своего времени, чтобы спросить совета. Я хотел узнать, как можно перейти с должности временного тестировщика на постоянную позицию в области QA — например, в разработке или другом секторе. Он честно посоветовал мне дистанцироваться от тестирования вообще: «Чем быстрее ты сможешь уйти из этой области, тем лучше для тебя». Спустя восемь месяцев я таки ушел из QA, более того — я и вовсе покинул игровую индустрию. Сейчас я разработчик коммерческого ПО. Признаю, в моей жизни теперь стало меньше веселья, зато прибавилось стабильности, да и зарплата значительно выросла».
Основано на реальных событиях
Кинолента «Мальчик на троих» (Grandma’s Boys) которая вышла на экраны в 2006 году и образ актера Алана Коверта (Allan Covert), сыгравшим тестировщика, стала чем-то вроде шутки в мире QA. Люди постоянно спрашивают настоящих тестировщиков: что из показанного в фильме является правдой? Обычно ответом является «немногое».
Один из эпизодов фильма, в котором самовлюбленный гейм-дизайнер J.P. просматривает раннюю версию игры и видит, как у главного персонажа отваливается голова, часто относят к моментам, указывающим на несоответствие реальности (промотайте до 1:31):
Глупо, правда? Баги в действительности не проявляются вот так. За исключением особых, единичных случаев…
«Однажды мне довелось работать над одной игрой, заточенной под сенсорный контроллер Kinect, которая включала в себя различные соревнования с препятствиями, преподанные как ТВ-шоу, — рассказывает тестировщик, работавший с крупным издателем. — Перед началом каждого раунда проигрывались короткие вступительные ролики с объявлением участников и вступительными комментариями. Один, и только один раз голова комментатора вдруг переместилась с привычной позиции на шее на пустое место возле тела персонажа, и затем упала просто упала вниз, исчезнув за пределами экрана. Никто впоследствии не смог воспроизвести этот баг, а мы пытались, уж поверьте мне.
Это выглядело сюрреалистично, особенно после того, как я уже приобрел отвращение к тому известному фильму из-за всех неточностей и наигранного упрощения (если хотите, опошления) моей работы («То есть у этого чувака просто отвалилась голова? Такой хрени НЕ БЫВАЕТ в настоящих играх!»). И вот подобная ситуация случилась в настоящей видеоигре, над которой я работал! Я никогда не забуду этот момент».
***
Фантазии геймеров из рекламы колледжа Уэствуд далеки от реального тестирования игр. В действительности мы имеем дело с непростой работой и низкими зарплатами. В результате многие тестировщики оказываются в незавидном положении, занимаясь аутсорсингом или выполняя подрядную работу для игрового разработчика, который даже не знает, кто делает для них тестирование. Один QA-специалист написал мне, что однажды он получил электронное письмо от HR-менеджера компании, где он работал: «Сотрудников приглашали написать свои мысли и пожелания по поводу праздничного корпоративного вечера. Когда же я ответил на письмо, предложив пару своих идей, оказалось, что сотрудники, работающие по временному договору, даже не приглашены на вечеринку».
Даже те, кто находит тестирование стоящей работой, приносящей удовлетворение, отмечают, что ситуация могла быть и лучше — значительно лучше. Масштабные изменения в индустрии могли бы оздоровить рабочую атмосферу и повысить продуктивность работы тестировщиков, которые бы плодотворно работали в связке с игровыми разработчиками для устранения максимального количества багов.
«Тестирование видеоигр — это работа невоспетых и неквалифицированных героев, — сообщалось в аналитической статье от весьма известной в свое время компании ST Labs. — Для некоторых компаний типичная стратегия тестирования заключается в том, чтобы дать игру большому количеству тестировщиков накануне релиза и надеяться, что специалисты отыщут серьезные проблемы. Стремление понять игровую специфику и современные технологии, выстраивание методики систематичного, тщательного тестирования — все это до сих пор воспринимается большинством компаний-разработчиков как совершенно новый подход».
Эта статья была написана Дьюри Прайсом (Duri Price) и Ильей Перлманом (Ilya Pearlman) в далеком 1997 году. Спустя 18 лет и 4 поколения игровых консолей можно подтвердить, что ничего не изменилось. Хорошие игровые тестировщики до сих пор являются невоспетыми и неквалифицированными героями, которые делают все, что в их силах, чтобы устранить все-все баги в игре. Несмотря на абсурдные дедлайны и совершенно лишенных мотивации коллег, они делают свою работу, которую всегда недооценивают — в лучшем случае.
Впрочем, существует и другой взгляд на эту ситуацию.
Вот как озвучил его один тестировщик с большим опытом работы: «Ты будешь иметь дело с дерьмовыми играми, с дерьмовыми людьми и дерьмовым продюсером (или проект-менеджером), который думает, что работать «все эти хреновые тестировщики» и в подметки ему не годятся. Ты будешь работать многие часы, будешь недооцененным и будешь то и дело замечать, что тот самый необычный баг, с которым ты провозился практически целый рабочий день, аннулирован с пометкой «Известно. Некритично для релиза». Но вместе с тем ты увидишь свое имя в финальных титрах игры, ты поймешь, что внес свой вклад в действительно крутой проект… и ты примешься за работу над другой классной игрой».
P.S. Прошу прощения у сообщества Мегамозга за столь затянувшийся перевод второй части. Искренне надеюсь, что вам понравилось предложенное чтиво.
Автор: