В каждой компании работа QA-специалистов устроена по-разному. Больше того, в каждом из бизнес-юнитов Haulmont своя специфика. СЭД ТЕЗИС — это продукт с десятилетней историей, лидер на российском рынке. Система Sherlock — решение со сложными алгоритмами и преимущественно иностранными заказчиками. В Custom Solutions разнообразие во всем — и в заказчиках, и в отраслях применения, и в технологиях. CUBA Platform (сейчас Jmix) — инструмент для разработчиков, поэтому основная часть задач QA связана с программированием. Мы продолжаем серию материалов об особенностях работы в Haulmont и рассказываем подробности о тестировании.
Чем занимается любой QA в Haulmont
Существует стереотип, что цель тестировщиков — все ломать и искать ошибки. Однако мы понимаем задачу шире — помочь выпустить продукт, который соответствует требованиям, логике и здравому смыслу. Поэтому хороший специалист может не только положить любое приложение, но и посмотреть на него с позиции пользователя, увидеть общую картину и подсказать, что можно улучшить. Хотя ломать тоже бывает полезно.
В целом задачи QA в каждом бизнес-юните похожие. Это не только традиционное тестирование, но и сопровождение продукта на всех этапах его жизненного цикла с целью обеспечения надлежащего качества.
Во всех бизнес-юнитах используется как ручное, так и автоматизированное тестирование, которое сейчас очень популярно. При этом мы считаем, что автотесты — это не панацея, так как они менее гибкие и все еще не могут сравниться по качеству с ручным тестированием, и позволяют проверить только конкретный набор сценариев, ни больше, ни меньше. Преимущественно автотесты применяются для регрессионного тестирования, когда необходимо проверить, как на существующую функциональность влияют улучшения и исправления. Вдобавок, их необходимо постоянно поддерживать в актуальном состоянии. Если разработчик изменил что-то в приложении, то требуется корректировать и автотест. Степень автоматизации в бизнес-юнитах разная, но каждый сотрудник при желании может развиваться в этом направлении.
QA-специалисты в Haulmont используют популярные инструменты, а также собственные разработки:
- Selenium для автоматизации действий в браузере, а также «надстройки» к нему (Selenide и собственная библиотека Masquerade).
- TeamCity для запуска автотестов.
- Postman и SoapUI для тестирования интеграций.
- Apache Jmeter для нагрузочного тестирования.
- Fiddler для тестирования трафика мобильных приложений
- Эмуляторы для тестирования на различных операционных системах, в т.ч. мобильных.
- QA Lense — еще одна собственная разработка для отслеживания процесса тестирования и хранения тест-кейсов.
- Системы баг-трекинга (например, Jira или YouTrack) и системы контроля версий (Git и SVN).
СЭД ТЕЗИС
В СЭД ТЕЗИС несколько QA входят в команду, выпускающую продукт, и тестируют новую версию (web-приложение, мобильное приложение, desktop-приложение «ТЕЗИС: Помощник», а также все интеграции). Еще часть команды распределена по клиентским проектам, где бывает множество разнообразных задач. При этом отдельные доработки на клиентском проекте могут быть включены в релиз, так что QA участвуют и в развитии продукта в целом.
QA в СЭД ТЕЗИС занимаются ручным функциональным тестированием, также есть отдел автоматизации тестирования и планируется выделить отдел нагрузочного тестирования. Кроме непосредственно тестирования еще одна важная задача QA в СЭД ТЕЗИС — подготовка документации как для внутреннего пользования, так и для передачи заказчику (чек-листы, планы регрессионного тестирования, ПМИ, которая составляется вместе с BA).
В бизнес-юните СЭД ТЕЗИС у нас больше всего QA. Если в маленьких командах можно к каждой ситуации и сотруднику подходить индивидуально, то в больших уже нужны четко выстроенные унифицированные процессы. Так с ростом в бизнес-юните появилась полноценная программа адаптации новых сотрудников, где описано, в какой последовательности будет изучаться предметная область и методологии тестирования, где взять нужную информацию и кто может помочь. За каждым новичком закрепляется ментор. Примерно через две недели после трудоустройства нужно сдать экзамен на знание системы ТЕЗИС отделу внедрения и сопровождения.
Со второго месяца новичка начинают привлекать для тестирования реальных проектов. Адаптация занимает примерно три месяца.
В СЭД ТЕЗИС у тестировщиков есть множество вариантов развития. Каждый может сосредоточиться на профессиональном росте как QA-специалист, изучать автотесты (в распоряжении бизнес-юнита есть материалы соответствующего курса), нагрузочное тестирование (по этой теме проходил мастер-класс) или решать менеджерские задачи и стать QA-лидом (помогать менеджеру проекта, оценивать трудозатраты, распределять нагрузку и влиять на весь процесс). Тому, кто хочет развиваться в одном из этих направлений, выделят ментора.
CUBA Platform (сейчас Jmix)
В бизнес-юните CUBA Platform (сейчас Jmix) QA-специалисты проверяют работу платформы для быстрой разработки корпоративного ПО, среды разработки CUBA Studio (сейчас Jmix Studio) и аддонов, созданных командой Haulmont и сообществом.
Самое главное — тестировщикам нужно быть в некоторой степени программистами. Чтобы проверить, как работает платформа, необходимо выполнять те же действия, которые будут выполнять пользователи, то есть создавать приложения. Именно поэтому для того, чтобы устроиться QA в CUBA Platform (сейчас Jmix), нужно знать Java и Kotlin.
Также важна богатая фантазия, чтобы предусмотреть максимальное количество пользовательских сценариев. При этом все равно пользователи могут столкнуться с проблемами, которые команда CUBA (сейчас Jmix) не смогла предугадать. В таких случаях пользователи задают вопрос на форуме, где отвечают не только разработчики, но и QA. Задача QA — понять, в чем проблема (баг в платформе или пользователь просто неправильно ее использует), а также посоветовать, как эту проблему обойти. Платформу используют по всему миру, поэтому существует два форума — на русском и английском языках. Команда тестирования отвечает на обоих.
Еще одна особенность бизнес-юнита — команда очень активно использует автотесты для проверки UI, интеграций и работы с базами данных. Автотесты в TeamCity запускаются каждую ночь, что позволяет оперативно найти и устранить проблемы, возникшие после внесения изменений. Каждый в команде может написать автотест самостоятельно или разобраться, если упал чужой.
Основная задача новых сотрудников — понять, как работает платформа, потренироваться выполнять в ней различные действия и выучить термины. В конце курса молодого бойца нужно создать работающее приложение — такая же задача и у разработчиков-новичков. Адаптация занимает около трех недель.
Основное направление развития для QA-специалистов бизнес-юнита — это технологии и разработка. В платформе постоянно появляются новые возможности (например, недавно добавилась мощная frontend-составляющая). Чтобы проверить их качество, необходимо понимать, как они должны работать, и уметь ими пользоваться.
Custom Solutions
В бизнес-юните много проектов, относящихся к совершенно разным отраслям: финансы, медицина, образование и так далее. Каждый QA входит в команду одного из них. Проекты длятся разное время, от нескольких месяцев до нескольких лет. Это влияет на язык коммуникаций и выбор методологии работы (большинство российских заказчиков работают по waterfall, большинство зарубежных — по agile). В некоторых случаях формируются смешанные команды, состоящие из сотрудников Haulmont и специалистов заказчика (как правило, заказчик отвечает за бизнес-аналитику и руководство проектом). Все это, с одной стороны, значит, что тестировщики могут очень сильно расширить профессиональный кругозор, а с другой стороны, что им необходимо уметь быстро адаптироваться.
Основной задачей QA традиционно является проверка, работает ли приложение в соответствии с ТЗ (или другим документом) и с ожиданиями пользователей. Использование и объем автотестов на каждом проекте зависит от желания заказчика. В частности, они применяются, если проект длительный и необходимо оптимизировать время тестирования. Как правило, каждый из QA в какой-то степени занимается созданием автотестов. Также часто бывает нужно провести нагрузочное тестирование, с которым каждый сотрудник должен уметь справляться.
В зависимости от проекта в задачи также может входить поддержка пользователей и помощь аналитикам в подготовке документации, и это помимо тестовой документации. Если проект зарубежный, то все пишется на английском языке, и на нем же команда общается с заказчиком.
Новые сотрудники в Custom Solutions сразу присоединяются к одному из проектов, поскольку у бизнес-юнита нет единой технологической базы, которую надо освоить. При этом каждому выделяется ментор, у которого можно спросить совета. Вдобавок к этому у бизнес-юнита накопилась огромная база знаний в Confluence, с которой новичков знакомят в первые дни и которой можно пользоваться в любой момент. Также в Custom Solutions есть свой тренинг-центр, который организует внутренние курсы для сотрудников. Записаться можно по желанию. Обычно курсы проходят в офисе, но во время пандемии коронавируса практиковали занятия в онлайн. Например, таким образом можно было изучить Continuous Integration и TeamCity.
Направлений роста в бизнес-юните несколько. При горизонтальном росте специалист развивается в профессиональном плане с технической стороны, расширяя круг знаний как в ручном тестировании (QA-анализ), так и в автоматизированном (у нас даже были случаи постепенного перехода в разработку). При вертикальном — в области менеджмента (QA-лид крупного проекта). Каждый может попробовать себя в любой сфере и понять, что нравится.
Кстати, прямо сейчас в бизнес-юните есть несколько открытых вакансий.
Sherlock
Система Sherlock автоматизирует все аспекты управления такси-бизнесом: заказ такси, назначение машины, выстраивание маршрута, оплата поездки. Мы разрабатываем мобильные приложения для пассажиров и водителей, а также инструменты для координации работы всей службы такси и аналитики.
Крупные релизы Sherlock выпускаются 3-4 раза в год. Между ними проходят минорные обновления со срочными доработками и багфиксами. QA в первую очередь проверяют работу продукта в целом (новая функциональность, багфиксы, регрессионное тестирование, интеграции, мобильные приложения), затем тестируют как она будет работать на каждом проекте с собственными переопределениями, и только после этого обновления устанавливают клиентам. В этом одно из отличий от СЭД ТЕЗИС, где сама система и клиентские расширения расходятся довольно сильно.
Каждый QA в Sherlock хорошо знает продукт целиком, но тестирует определенный, закрепленный за ним компонент. Это может быть мобильное приложение для водителей или пассажиров, автоматическое назначение машин на заказы, телефония, десктопное приложение для диспетчеров, модуль расчета зарплат и так далее.
Основная сложность и основной интерес работы в Sherlock заключается в обширной предметной области, при этом изменения в одном компоненте влияют на всю систему. Поэтому QA необходимо логическое мышление и способность видеть не только отдельный участок функциональности, а всю картину целиком.
Адаптация новичков занимает примерно две недели. За это время QA под руководством ментора изучает мануалы и тестовую документацию по Sherlock, а также выполняет несложные «боевые» задачи. Период адаптации завершается мини-экзаменом. Основное направление развития QA в Sherlock — это автоматизация тестирования. Кроме того, можно расширить свой профессиональный кругозор и узнать, как устроена отрасль (да и жизнь в целом) в разных странах.
Вакансии для QA-специалистов мы публикуем в разделе «Карьера».
Может быть интересно:
на официальном сайте компании