В компании «Тензор» работаю 10 лет, за это время количество тестировщиков приблизилось к четыремстам.
И все эти 10 лет наша компания проводила различные хакатоны для студентов, конкурсы для разработчиков, наши охранники участвовали в CTF, конкурсы на лучшее фото с отдыха, турниры по настольному теннису, шахматам, волейболу, пауэрлифтингу.
Ну и вы получаете идея.
Что угодно, только не соревнование, в котором можно проверить свои навыки в поиске ошибок.
И не геймификация процесса, не дружеские посиделки с ноутбуками, а действительно злые гонки.
Собственно, мы организовали такие соревнования и успешно проводим их второй год подряд (2020 год за год не считается :)).
Я просто хочу рассказать о нашем опыте, трудностях, успехах и выводах.
Первым шагом было выбрать концепцию самих игр.
В интернете описано не так много кейсов и в основном это была геймификация рабочего процесса.
Я ничего не имею против этого, но они далеки от формата соревнований.
Была форма для нахождения площади треугольника с автоматической записью ошибок, несколько подобных простых тестов-тренажёров, были олимпиады и, наконец, несколько конкурсов, где брался интересный внешний проект и организовывались тестовые занятия с кофе и булочки.
Это не одно и то же.
Поэтому мне пришлось разработать свою собственную версию и натолкнуться на множество препятствий в процессе.
Отборочный этап
Мы хотели сразу провести офлайн-соревнования, но сотни зарегистрированных участников вынудили нас провести отборочный этап онлайн.Для этого было создано несколько мини-приложений и сайт с доступом по коду.
Всем участникам был дан ровно час, и они должны были немедленно сообщить о каждой обнаруженной ошибке.
Никаких ошибок заранее мы не планировали, они, конечно, вылезли сами собой :) Были и классические молды:
И задачи по верстке:
Для подсчета баллов была сформирована команда из десятка опытных тестировщиков, которые два дня разбирали присланные отчеты об ошибках.
И это были адские 48 часов.
Масштаб трагедии понятен из диаграммы распределения ошибок по задачам:
Часто получались похожие ошибки, которые воспроизводились немного по-другому.
И мы не раз собирали консилиум, чтобы принять решение о судьбе таких отчетов об ошибках.
В результате из 154 человек были выбраны 20 финалистов.
Эти же задачи были собраны в автономный архив , который вы можете скачать и ознакомиться со всеми заданиями.
Финал
Финал состоялся офлайн.После одного из хакатонов у нас осталось картографическое приложение с интересными функциями — загрузка карт, построение маршрутов и, конечно же, с огромным количеством ошибок.
Цель проста: найти как можно больше ошибок и сообщить о них.
Чтобы жизнь не казалась медом, все отчеты проверялись судьями на лету и возвращались в систему баг-трекера на доработку.
Кстати, судей было более десяти, и дискуссии были жаркими.
В зале с участниками находился большой экран, на котором в режиме реального времени отображались заработанные участниками баллы и их позиции.
За 30 минут до финала экран для интриги отключили и включили после объявления победителей.
После подсчета и подтверждения последних отчетов судьи подвели итоги и 3 победителя поделили между собой 150К.
Багатлон 2.0
Участники первого багатлона оставили много положительных отзывов о первом этапе.Даже финалистам оно понравилось больше всего.
И в 2021 году мы решили провести онлайн-конкурс с несколькими мини-приложениями.
Но сидеть и проверять багрепорты несколько дней мне не хотелось.
Поэтому в этот раз мы решили попробовать вариант с автоматическим исправлением ошибок.
Я не хотел искусственно вводить «ошибки».
Это будет скорее игра в угадайку, а не полноценное соревнование.
Итак, мы только что создали несколько приложений.
Далее мы сформировали фокус-группу, которая обнаружила некоторые ошибки.
Затем мы рассмотрели код на предмет участков, где теоретически разработчик мог допустить ошибку.
И добавили в движок автоматическое исправление найденных ошибок.
Пример таких ошибок.
Вездесущие граничные значения :) Поскольку все действия и входные данные проверялись на сервере, был выбран и нагрузочно протестирован стек ngingx + uWSGI + python + postgreSQL. Фронтенд делался без полноценных макетов с использованием нашего внутреннего фреймворка.
Васаби .
И хотя участники обнаружили немало функциональных ошибок в движке, сайт справился с нагрузкой и основной задачей.
Но нагрузки было достаточно.
На этот раз участников было более 200. На само прохождение было отведено 60 минут, а стартовать можно было в течение суток, чтобы сотрудники из разных часовых поясов могли участвовать в удобное для себя время.
Результаты конкурса стали известны сразу.
Это первый плюс.
Вторым преимуществом стали спокойные нервы организаторов – к моменту старта основная работа была завершена.
А теперь о минусах со слов самих участников: «.
автоматическая фиксация действительно хороша, но иногда непонятно, какая ошибка была засчитана.
Хотелось бы увидеть какой-нибудь список или хотя бы всплывающее окно, чтобы больше не ловить ошибку».
«Для задания 5 в Багатлоне не были зафиксированы следующие ошибки.
» Это самые распространенные жалобы.
И если игроку можно показать, какую ошибку он нашел, то найти все ошибки, очевидно, крайне сложная задача.
Мы хотим сделать третий Багатлон более похожим на Появление Кодекса, чтобы задания для каждого участника были похожи, но по-своему уникальны, а сами задания связаны в одну историю.
По идее, это должно добавить азарта соревнованию, а просто для удовольствия это все равно не менее важно, чем соревновательный дух.
Как тестировщики развлекаются в вашей компании? :) Теги: #хакатон #тестирование #тестирование веб-сервисов #тестирование ИТ-систем #конкурс #багатлон
-
Как Рисовать Онлайн
19 Oct, 24 -
Почему Нет Альтернативы Атомной Энергетике?
19 Oct, 24 -
Ms Office 2010 Онлайн: Скоро!
19 Oct, 24