Добрый день! 8 октября 2016 года в Москве (а 9 октября в Санкт-Петербурге) проходило весьма любопытное событие под названием «Testathon». Организаторы рекламировали его как «первый в России международный хакатон для тестировщиков». Несмотря на изначально настороженное отношение (до этого я был только на одном real-life хакатоне по геймдеву, и было это достаточно плохо), я все-таки решился посетить московский этап «Тестатона». В итоге поучаствовал во всех этапах соревнований (и даже кое-что выиграл) и я хочу сказать, что оно того действительно стоило.
Сегодня я подробно расскажу о том, как здорово все это было (соблюдая все подписанные NDA, конечно), чтобы в случае возвращения этих замечательных ребят в Россию больше людей смогли победить свой здравый скептицизм. Если вы принципиально не участвуете в хакатонах (то есть ваш девиз по жизни «поспешишь — людей насмешишь»), то можете просто оценить историю об одном необычном и крайне запоминающемся дне моей жизни.
Что это такое?
«Тестатон» — это мероприятие формата хакатон, организуемое крауд-тестинг компанией Global App Testing в партнерстве с крупными компаниями-разработчиками софта, в числе которых Spotify, Dropbox, Facebook, Uber и другие. Как можно догадаться из названия, особенностью этого хакатона является то, что вместо скоростной разработки софта здесь проводится его скоростное тестирование. Московский этап именовался Chapter 9, из чего следовало, что определенный опыт в проведении таких мероприятий у них уже есть. Ранее «Тестатоны» проходили в Великобритании, Нигерии, ЮАР и других странах, т.е. ребята явно подходят к своей «международности» очень основательно.
Регистрация
Узнал я «Тестатоне» от друга-тестировщика благодаря маленькой заметке на Хабре. Нигде больше информации о нем я не заметил (только в паре небольших QA-сообществ, и то уже достаточно поздно), поэтому изначально заподозрил мелкокалиберность этого мероприятия. Но мы с товарищем «за любую движуху», поэтому решили зарегистрироваться.
Форма регистрации достаточно подробно расспрашивала об опыте работы и соответствующих навыках, а это означало, что участников будут отбирать — это был хороший знак. Помимо всего прочего форма интересовалась, сколько мобильных устройств я принесу с собой (сами организаторы никаких девайсов не предоставляют) и сообщала, что участнику, который принесет больше всего девайсов (а также тому, кто принесет самый древний работающий девайс), полагается отдельный приз. Будто бы совсем не относится к теме мероприятия, зато необычно.
Через несколько дней регистрация закрылась, и мне пришло подтверждение об участии. Товарищу сначала пришло письмо о занесении в waiting list (на самом мероприятии нам сообщили, что в нём осталось более 150 человек), но достаточно быстро его перенесли в основной состав.
За несколько дней до начала пришло информационное письмо, которое, что удивительно, практически не несло полезной информации. Оно содержало в себе «советы» победителей прошлых Тестатонов, которые выглядели художественным перепечатыванием самых основ работы тестировщика: «Рассматривайте приложение с разных точек зрения, заготовьте в своей голове несколько персонажей и подумайте, как бы они пользовались этим приложением...» После его прочтения осталось странное чувство неопределенности: ведь мы действительно собирались пойти на ивент, не имея ни малейшего представления о том, что будет там происходить. К тому же подобный «метафизический» подход к тестированию я люблю не больше, чем строго методологический. Единственный действительно важный пункт говорил о том, что тестировать мы будем исключительно мобильные приложения, а ноутбуки нам будут нужны только для использования баг-трекера.
Начало
И вот, одолжив несколько тестовых телефонов на работе (спасибо, Саша), мы отправились в путь. Тестатон проходил в крупном бизнес-центре Silver City на Серебрянической набережной, очень комфортной и уютной площадке. Почти без задержек, в 9 часов утра началась регистрация c проверкой документов и подписанием NDA. Внутри нам предложили разделиться на команды (11 команд по 5 человек) в вольном порядке и занять соответствующие столы. Здесь некоторых участников ожидал сюрприз — основным языком мероприятия является английский. То есть никто из организаторов не владеет русским языком, ведущий говорит на английском, баг-репорты нужно заводить на английском… Напрямую об этом нигде не сообщалось (хоть и во всех материалах и письмах, приходивших участникам перед началом Тестатона не было ни слова по-русски), но без должного знания технического английского языка участие в этом мероприятии становится затруднительным.
А потом СОТНИ девайсов начали коннектиться к несчастному вайфаю бизнес-центра… и он умер.
Веселый и заводной ведущий (а по совместительству соорганизатор «Тестатона» и сооснователь Global App Testing Рональд Каммингс-Джон (англ. Ronald Cummings-John) призвал нас не паниковать (это не сработало) и подождать решения проблемы. Это и последующая задержка процесса на полчаса остались единственными провалами организации.
После вступительных слов от организаторов было объявлено начало первого тура. Между командами поделили области тестирования, а уже между собой участники команды делили платформы, девайсы и все, что им приходило в голову. На практике же деление вышло весьма условным, так как от каждого участника принимались любые баги: скорее всего организаторы хотели таким образом максимально уменьшить вероятность дублирования.
Здесь мог бы быть занимательный рассказ о найденных багах, обсуждении дефектов с организаторами и фантастических идеях участников, но NDA. Простите.
Каждый найденный баг участник мог зарепортить в собственную баг-трекинговую систему Global Apps Testing (насколько я понял, эта же система используется и в коммерческой деятельности компании). Группа модераторов, расположенная в Румынии, воспроизводила каждый кейс, оценивала критичность дефекта и выставляла тикету одну из трех резолюций: Rejected, Accepted или Shortlisted (тикет с такой резолюцией начинал участвовать в конкурсе на лучший баг). Каждый проверенный тикет добавлял (или отнимал, в случае Rejected) определенное количество очков, сумма которых позволяла определить победителей в номинации Best QA. Помимо проверки воспроизводимости и серьёзности бага, модераторы так же оценивали качество баг-репортов (за это полагался отдельный приз).
По итогам полутора часов первого тура командам поручили дать суммарный фидбек. В нем мы описывали, какие паттерны тестирования мы использовали, какие командные thinking frameworks применяли и т.д. Я так и не понял, зачем это было нужно, потому что лучшая команда определялась исключительно по максимальной сумме очков, набранной каждым участником.
Обед
Рассказывая о любом публичном ивенте, длящемся целый день, нельзя не упомянуть о питании. Тут с ним было все в порядке (: Вкусный борщ (прилагающаяся к нему пампушка ВНЕЗАПНО оказалась пирожком с мясом), куриный или мясной шашлык (правда, найти место его выдачи оказалось нетривиально), пара неплохих салатов, десерт и на удивление приличные чай и кофе. Хвала за старания бизнес-центру, благо участников было не так много, чтобы обед в маленьком кафе превратился в ад.
Организаторы тут решили сделать упор на одну из главных целей мероприятия — общение между участниками. А потому у всех было задание на время обеда: сесть с незнакомыми людьми и постараться поближе познакомиться. Мне с товарищем повезло разделить стол со вторым соорганизатором «Тестатона» Owais Peer. Он рассказывал нам про работу Global App Testing, организацию «Тестатонов» в разных странах и впечатления от Москвы. Мы тоже поделились своей реакцией на мероприятие (включая изначальное недоверие, которое его откровенно удивило; надеемся, в дальнейшем они смогут быть более «открытыми»). А еще он впервые в жизни попробовал борщ, и ему понравилось (хоть он и не хотел нам верить, что цвет блюду придает вовсе не обилие помидоров).
В преддверии второго тура мы натолкнулись на новое условие: нужно было иначе распределиться по командам так, чтобы не пересекаться ни с кем из первой команды. Так мы с моим товарищем стали противниками. Team F(at) for the win!
Завершение
Второй и третий раунды прошли на одном дыхании. Их процесс существенно отличался от первого, потому ни скучно, ни рутинно не было (впрочем, само наличие третьего тура оказалось для нас новостью, так как в изначально разосланному всем участникам расписанию туров было только два).
В перерыве был небольшой кофе-брейк, заполнение фидбек-форм и голосование за участника в номинации Most Talkative. Я ожидал «саморекламного» галдежа и общего веселья, но было достаточно спокойно. Все-таки айтишники не самый легкий на подъем народ :(
К моменту завершения третьего тура организаторы уже были готовы к началу церемонии награждения. Каждый победитель получал симпатичный именной сертификат и приз (Рональд просил нас при упоминании этого слова дружно издавать восторженное «У-у-у-у-у!» и стучать по столу руками). Номинаций было достаточно много, среди них и призы за лучший баг, и за самые понятные баг-репорты, и уже вышеупомянутый приз самому разговорчивому человеку. Ваш покорный слуга победил в номинации Best Participation During Feedback. Да, можете считать это утешительным призом просто за то, что я больше всех остальных приставал к организаторам с вопросами и советами :) Больше всего девайсов принесла девушка с ошеломляющим набором в ВОСЕМНАДЦАТЬ штук. А вот какой девайс стал самым древним я так и не узнал. Но мой ветеран HTC Hero помог мне обнаружить немало интересных кейсов.
В конечном счете я не пожалел ни минуты проведённого на «Тестатоне» времени. Кое-какие вещи, конечно, ребятам еще стоит отполировать: например, немного странное впечатление оставило то, что из-за обилия номинаций призы получила чуть ли не половина участников, а остальные должны были чувствовать себя от этого весьма неловко. Но все равно впечатления остались по большей части положительными. Буду настоятельно рекомендовать Badoo сотрудничать с этими замечательными ребятами, чтобы провести очередной «Тестатон» под нашим флагом!
К сожалению, кроме достаточно интересных фото с Питерского этапа Тестатона у меня нет больше никакого фидбека о том, как проходило мероприятие в северной столице. Если на Хабре есть его счастливые участники — буду очень рад услышать ваши впечатления!
И еще раз отдельное спасибо Рональду за то, что самоотверженно развлекал нас всех во время этого крайне серьезного мероприятия и позволил «Тестатону» стать одним из самых запоминающихся дней моей жизни.
Кудинов Илья, Sr. QA Engineer, Badoo Development
Автор: Badoo