Кто такой Automation QA engineer?
Это специалист, контролирующий качество выпускаемого продукта с использованием программных средств для написания тестов и анализа их выполнения.
Основная задача QA-автоматизатора — создавать автоматические скрипты, которые будут проверять работу программы на основании тест-кейсов, написанных QA-мануальщиками.
QA Automation engineer обладает навыками программиста и логикой тестировщика одновременно. Как и QA-мануальщики, QA-автоматизатор мониторит качество продукта на различных этапах его разработки, тестирования и эксплуатации. Как и программисты, QA-автоматизатор занимается разработкой, только он создает продукт, чтобы проверить написанное программистами.
В общем, программисты — создают, тестировщики — ломают, а автоматизаторы — создают, чтобы сломать! 🙂
Зачем он нужен?
Для бизнеса важно как можно скорее доставлять изменения пользователям, опережать конкурентов. Это возможно благодаря гибким методологиям разработки, а также таким практикам, как continuous integration и continuous delivery. Последние подразумевают использование автоматизированного тестирования. При регулярном запуске автотестов у вас есть уверенность, что приложение работает так, как вы рассчитываете. А если возникают проблемы — вы узнаете о них в кратчайшие сроки.
Также в роли заказчика для автоматизатора выступает тестировщик-мануальщик. Он просит автоматизировать тот или иной кусок функциональности, чтобы больше не повторять одни и те же рутинные действия и освободить время на анализ и придумывание нетривиальных сценариев. Таким образом, автоматизатор создает продукт, конечным пользователем которого будет он сам и его команда.
Почему говорят, что инженер по автоматизированному тестированию — это почти разработчик?
Для начала рассмотрим, кто такой разработчик ПО. Это специалист, который пишет код с использованием того или иного языка программирования. И, возвращаясь к вопросу, можно ответить, что QA-автоматизатор — тот же специалист, который пишет код, но только цель этого кода не создание нового продукта, а проверка действующего кода. Принципы написания кода едины как для разработчиков, так и для автоматизаторов.
Что необходимо знать, чтобы быть востребованным специалистом?
Ключевыми требованиями окажутся: знание основ тестирования, знание основ одного из языков программирования — чаще всего Java/C#/Python/Javascript, понимание принципов объектно-ориентированного программирования, знание основ SQL, английский уровня A2 и выше.
Это минимум, которого может быть достаточно, чтобы добавлять автотесты в готовом решении для тестирования веб-приложений.
Какие есть карьерные перспективы?
Если есть желание расти дальше, то рекомендации во многом будут совпадать с рекомендациями для разработчиков. Знание лучших практик программирования, того, как писать хороший код, как и когда имеет смысл применять паттерны проектирования, рефакторинг. Понимание процессов и методологий разработки и хорошее владение английским также очень важны.
Некоторые специалисты переходят в разработку.
Ещё один вариант — расти в менеджмент: Team lead, Software testing manager. Путь непростой, так как может потребовать совмещения технических задач и управленческих, нести ещё большую ответственность.
Если говорить о том, какие специалисты наиболее востребованы, то это те, которые имеют опыт организации процесса автоматизированного тестирования, определения тестовой стратегии, выбора подходящих инструментов, создания прототипов, управления командой. Таких специалистов очень мало.
Достоинства профессии
Главным достоинством своей профессии автоматизаторы называют разнообразие выполняемой работы, которая объединяет аналитику, тестирование, программирование и администрирование.
«Автоматизация позволяет фокусироваться на решении трудных задач, аналитике, переложив монотонные задачи на плечи компьютера. Минимум рутины — максимум челенджа! Всегда любил искать недостатки в системе».
В отличие от обычного тестирования, работа автоматизаторов не завязана на однообразном «кликанье» и дает больше возможностей для творчества. QA Automation инженерам нравится немедленно видеть результаты своего труда, а также придумывать новые подходы, технологии и инструменты.
«Я по жизни ужасный перфекционист, потому выбрал тестирование. Имею логический состав ума, потому ушел в автоматизацию».
Еще одно преимущество специальности — возможность работать с различными технологиями и языками программирования, стимул изучать новое.
«Моя работа привлекает меня тем, что технологии всегда на шаг впереди, а ты догоняешь. Узнаёшь всё больше и больше, а „за горизонтом“ в n раз больше».
«Постоянно появляются новые инструменты и подходы в разработке. Вчера писал автотесты на Java, сегодня автоматизируешь iOS на JavaScript, завтра делаешь нагрузочные тесты на С».
Привлекают и зарплаты. Оклады автоматизаторов больше, чем у мануальных тестировщиков, сравнимы со ставками разработчиков. К тому же, рынок труда насыщен QA Automation инженерамы в разы меньше, чем программистами, поэтому толковые автоматизаторы чувствуют себя уверенно.
Почувствовал, что это — твоё?
Тогда откликайся по ссылке: https://hcm.expert-soft.by/jobs/java-intern и заполняй анкету с указанием желаемой должности QA Automation Engineer. Далее тебе на почту будет выслан тест по английскому языку и тест по Java. По итогам выполнения тестовых заданий мы приглашаем на собеседование. Получи шанс стать ближе к профессии своей мечты!