Дарио Язбец Хрватин (Dario Jazbec Hrvatin) из Словении — первый тестировщик в процессе разработки в OnTheGoSystems. Дарио присоединился к нам в апреле и стал частью команды разработчиков Toolset. Его первыми задачами была работа с плагином Layouts: он тестировал новый код по мере его написания и следил за тем, чтобы ничего не осталось без проверки.
Сегодня Дарио объясняет, в чём заключается роль тестировщика в процессе разработки и как это помогает выпускать продукты качественнее и быстрее. Давайте посмотрим на трудности и преимущества работы в компании по разработке плагинов для WordPress с точки зрения нового члена команды.

Краткая предыстория
Меня зовут Дарио Язбец Хрватин. Я уже несколько лет работаю веб-разработчиком, и в начале своей карьеры так вышло, что я выбрал WordPress в качестве основной платформы для разработки сайтов (я бы сказал, это было очень удачное решение).
Как и у любого другого разработчика, у меня был свой набор любимых плагинов, которые я использовал в большинстве своих проектов. Два из них, которыми я, вероятно, пользовался чаще всего, — это Types (для всех произвольных полей, таксономий, типов записей и т. д.) и WPML (для многоязычных сайтов). Поэтому, когда мне представилась возможность стать тестировщиком в процессе разработки в той самой компании, которая создала мои любимые плагины, я, конечно же, с радостью ухватился за этот шанс.
Работа тестировщиком в процессе разработки: в чём же её суть?
Быть тестировщиком в процессе разработки означает, что Вы работаете с командой разработчиков плагинов, пока они трудятся над новыми функциями, переработками, исправлениями ошибок и т. д., и помогаете им отслеживать баги и потенциальные проблемы. Это позволяет компании выпускать ещё более доработанные плагины без ошибок и экономит время, поскольку проблемы можно решать быстрее по сравнению с ответами на тикеты на форуме поддержки. Разумеется, само собой, что отзывы пользователей остаются очень важными.
Ещё один плюс заключается в том, что тестировщики могут стать «свежим взглядом» при работе с плагинами. Что мне также очень помогло, так это мой собственный опыт работы с клиентами и пользователями. Это позволяет мне пытаться мыслить больше как обычный пользователь и ставить себя на его место. Иногда пользователям нужно всё разжёвывать, и это вовсе не плохо, потому что мы хотим, чтобы плагины были максимально интуитивно понятными.
Таким образом, мы подходим к ещё одной (важной) части работы тестировщика в процессе разработки — думать об удобстве использования продуктов и предлагать различные идеи, которые, по Вашему мнению, могли бы помочь улучшить плагины. Даже такие мелочи, как расположение ссылки в меню, могут помочь сделать работу с плагином удобнее для тех, кто им пользуется.
Может ли любой стать тестировщиком в процессе разработки?
Возможно, сейчас Вы задаётесь вопросом, как выглядит тестирование? Это просто кликанье мышкой весь день? Какие знания для этого требуются? Может ли этим заниматься кто угодно?
Ну, не существует теста, чтобы проверить, может ли кто-то быть тестировщиком (простите за отсылку к Monkey Island), но, безусловно, есть вещи, которые нужно хорошо знать, например, работу с WordPress и хорошее знание таких языков программирования, как HTML, CSS, PHP и JavaScript. Эти знания нужны Вам для того, чтобы понимать, что происходит внутри, и сообщать о проблемах, которые часто не видны во фронтенде плагина или сайта.
Я считаю, что Ваши личные качества так же важны, как и технические навыки, поэтому Вам понадобится следующее:
- Отличные организаторские навыки: с нашими плагинами можно выполнить так много возможных действий и их комбинаций, что без организованности легко запутаться. Представьте, что Вы нашли неприятный баг и не помните, как именно Вы его вызвали, и больше не можете его воспроизвести. Поэтому, возвращаясь к одному из вопросов выше — нет, Вы не можете просто кликать мышкой и кричать: «Выкусите!», когда Вам удаётся что-то сломать. :)
- Концентрация и внимание к деталям: Вы должны быть сосредоточены, очень тщательны и внимательны к деталям. Помните, что качество плагина проявляется не только во фронтенде, но и глубоко в коде.
- Дружелюбность и спокойствие: поскольку Вы работаете и общаетесь онлайн, очень важно сохранять спокойствие (панические атаки ни к чему) и быть искренне вежливым со всеми.
Итак, как на самом деле выглядит мой рабочий день?
Я начинаю свой день с проверки электронной почты и задач от коллег по команде. Затем у нас проходит ежедневная встреча, на которой мы обсуждаем текущие и срочные вопросы, требующие решения. После встречи я просматриваю задачи, назначенные мне для тестирования, и провожу большую часть дня, тщательно их проверяя.
Тесты разделены на различные этапы в зависимости от конкретной функциональности. Если я нахожу баг или замечаю проблему, я обычно открываю задачу в нашей системе управления проектами (мы используем Basecamp). По сути, это поручение что-то исправить с комментариями для дальнейшего объяснения или обсуждения. Эта система очень важна, чтобы мы все могли в любой момент отслеживать, что исправлено, что нужно исправить и каков общий статус.
Наконец, позвольте мне вкратце объяснить процесс тестирования.

Перед тестированием я обновляю свои собственные плагины из версий для разработки, поскольку в программное обеспечение постоянно что-то добавляется или исправляется. Кроме того, поскольку важна кроссбраузерная совместимость, я тестирую в Chrome, Firefox и IE. На днях я случайно заметил, что все мы работаем в разных системах (Mac, Linux и Windows), и мне нравится это разнообразие; на наших встречах нет войн между фанатами ОС. :)
У меня есть локальная среда (с использованием XAMPP) и тестовый сайт на нашем сервере, поэтому при необходимости я могу создавать для себя новые, чистые установки WP с нужными настройками.

Я открываю план тестирования и прохожу по шагам один за другим. Во время тестирования нужно внимательно следить за двумя вещами: держать открытой консоль браузера, чтобы видеть, не появляются ли там ошибки, и постоянно проверять файл debug.log в WP, чтобы видеть уведомления, предупреждения PHP и т. д.
Когда Вы замечаете баги и проблемы, Вам нужно открыть задачу для разработчиков. Вы должны очень точно объяснять им суть проблем, чтобы они могли как можно быстрее воспроизвести и исправить их. Я часто использую скриншоты и записи экрана, чтобы объяснять проблемы эффективнее и проще. При необходимости мы созваниваемся по видеосвязи и обсуждаем всё таким образом.
Во время тестирования часто бывают ситуации, когда Вы не уверены, столкнулись ли Вы с багом или так и должно работать. В этом случае я советуюсь с коллегами, и они всё объясняют или дают советы по проблеме. По мере решения проблем мне всегда нужно тестировать их повторно, чтобы убедиться, что всё действительно исправлено.
Несколько замечательных моментов в этой работе
Это была лишь упрощённая версия рабочего дня тестировщика в процессе разработки, и у меня всегда есть новые задачи, а также то, чему можно научиться и что сделать. Одно из главных преимуществ заключается в том, что, познакомившись с нашими программистами, я понял, что они очень отзывчивые, терпеливые и просто отличные коллеги.
Кроме того, пока решаются проблемы и задачи, всё обсуждается и объясняется, так что Вы можете учиться. Находить баги и вносить предложения, которые, по Вашему мнению, могли бы улучшить продукт, — вот для чего Вы здесь, и Ваши идеи будут оценены по достоинству.
Работа для вас
Вам понравилась история Дарио? Согласны ли Вы, что работа с опытными разработчиками кажется хорошей возможностью для развития Ваших навыков работы с WordPress? И да, работа тестировщиком в процессе разработки не только позволяет Вам на практике расширить знания о WordPress, но и может стать отличным трамплином к должностям в сфере разработки.Если Вы считаете, что эта работа для Вас, присоединяйтесь к нам уже сегодня. Мы ищем талантливых людей, которые станут частью нашей семьи. Дополнительная информация и подробности о подаче заявки: «Вакансии разработчиков и специалистов поддержки WordPress».


