Тестировщик автоматизатор что это

Какие вопросы ожидать на позицию автоматизатора и причем тут сортировка?

Само собой, если вы проходите собеседование на позицию junior, от вас не будут требовать опыта и знаний по всем вопросам. Будет круто, если вы разбираетесь хотя бы в

30% всего этого. От позиции middle я бы ожидал примерно

50%-60% знаний перечисленных мною тем. Ну и далее по восходящей.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Кто такой автоматизатор?

Чтобы понять, какие вопросы вас ждут на позицию автоматизатора, прежде всего стоит определиться с повседневными задачами автоматизатора. Ведь именно на их основе хороший интервьюер готовит вопросы. Какой смысл спрашивать о том, с чем автоматизатор работать не будет? Хотя бывают и исключения, но об этом чуть ниже.

Разбираться в тестировании. Иначе не получится писать хорошие тесты, проверяющие именно то, что необходимо.

Уметь программировать. Конечно, на первый взгляд тесты кажутся очень простыми. Последовательно вызываешь методы кликов, ввода значения и так далее. Но это неплохо работает только на небольшом количестве тестов, да и то если сам продукт меняется не слишком часто и работает стабильно. Чем больше тестов и сложнее продукт, тем больше опыта в программировании потребуется от автоматизатора для эффективной работы.

Итак, я предлагаю исходить из того, что именно по этим темам нас с вами и будут “гонять” на собеседованиях. Давайте поговорим про каждую из них подробнее и определимся с основными вопросами, к которым стоит быть готовыми.

Тестирование

Обычные вопросы по тестированию чаще всего затрагивают теорию и практику.

В теоретической части любят спрашивать про техники тестирования и тест-дизайн. Например, могут спросить о том, как бы вы составили тест-кейсы для какого-то функционала или целой программы.

Скорее всего спросят про знание устройства самого продукта, который вы будете тестировать. Например, если вам предстоит работать с Web, надо понимать как он работает: разбираться в протоколе HTTP, знать о связке HTML / CSS / JavaScript, понимать смысл кросс-браузерного тестирования и так далее.

Для тестирования мобильных приложений надо понимать основное отличие операционных систем iOS и Android, особенности тестирования на симуляторах, эмуляторах и реальных девайсах и многое другое.

Само собой, поскольку все это нам предстоит автоматизировать, еще необходимо разбираться в стеках автоматизации. Для автоматизации тестирования Web необходимо понимать как настроить Selenium или Selenoid, как подбирать CSS или XPath-локаторы для элементов, какие браузеры выбрать для тестов.

Для мобильной автоматизации пригодится знание драйверов (Espresso или XCUITest) или опыт работы с Appium. Умение настраивать ферму девайсов или устанавливать необходимые эмуляторы и симуляторы.

Для автоматизации API необходимо знать про методы HTTP-запросов (GET, POST, PUT, DELETE и т.д.) и их отличия, коды ответа сервера и их основные форматы (JSON, XML).

На практической части могут дать проверить работу какого-нибудь приложения, попросить составить список тест-кейсов и рассказать про особенности тестирования подобных продуктов.

Недавно, к слову, я писал автоматическую песочницу, имитирующую подобную задачу на собеседовании. Кому интересно, потыкать ее можно тут.

Программирование

В самом начале статьи я упомянул, что на собеседовании не всегда есть возможность задавать вопросы по тем задачам, с которыми предстоит работать. Я говорил как раз про эту часть.

Очень многие кандидаты не любят, когда на собеседовании их просят писать код. Особенно когда это код какой-нибудь алгоритмической задачи. Той же сортировки, например.

Я думаю, что ответ довольно простой. Потому что заставить писать кандидата полноценный тест долго и сложно. Во-первых, у всех кандидатов разный опыт работы с фреймворками. Кто-то пишет на Selenide, кто-то написал свою обертку, а кто-то на голом фреймворке Selenium. И это только Java. На других языках программирования свои фреймворки и их тоже может быть несколько.

Следовательно, велика вероятность, что кандидат не знает того фреймворка, на котором ему предложат писать тест. В таких условиях оценить его опыт не получится. А заставлять кандидата прямо на собеседовании собирать проект с нуля через тот же Gradle с его любимыми библиотеками довольно долго.

Конечно, можно дать задачу на дом, чтобы кандидат потом прислал ссылку на репозиторий. Некоторые компании так делают, но надо понимать, что не все готовы тратить свое время на решение этих задач в свое свободное время. Из-за этого часть кандидатов тоже могут отпасть. Причем как раз тех, кто уже имеет неплохой опыт и уверенно ощущает себя на рынке. Они с большой вероятностью откажутся и пойдут общаться с той компанией, где процесс интервью проще и проходит быстрее, без “домашних заданий”.

Чаще всего человек, который действительно пишет много кода, справится с подобными задачами. Особенно если немного попрактикуется решать именно такие специфичные задачи. Для этого существуют такие ресурсы, как leetcode, codewars и прочие.

Еще на собеседовании могут поспрашивать немного про паттерны программирования. Тут хорошо знать про Singleton, Factory, PageObject, PageFactory, Builder и так далее. Можно еще почитать про принципы разработки SOLID, KISS, DRY, SRP.

Девопс

Помимо этого спросят про опыт работы с bash: команды cd, ls, ps, mv, cp и так далее. Просто, чтобы убедиться, что вы не растеряетесь, зайдя на какой-нибудь сервер на основе linux по ssh.

Скорее всего попросят решить какую-нибудь задачку на SQL-запрос. Он тоже довольно популярен и с ним приходится работать, например, при тестировании серверной части: баз данных, сервисов или API.

Само собой, это не полный список возможных тем на собеседовании. Всегда стоит ожидать совершенно любого вопроса на самые разнообразные темы.

Но есть и те, кто только недавно начал проводить собеседования. Такие ребята еще не до конца набили руку и могут попадаться вопросы, не всегда имеющие отношения непосредственно к задачам их будущего коллеги. Или даже не до конца сформулированные вопросы. К этому тоже стоит быть готовыми и не стесняться уточнять и задавать дополнительные вопросы. Не всегда, когда что-то непонятно, проблема может быть в вашем незнании темы. Порой еще и в неопытности того, кто эти вопросы задает.

Также, за рамками этой статьи остались всевозможные вопросы по софт-скиллам. От безобидных: какую музыку предпочитаете, чем в свободное время занимаетесь. До более сложных. Например, как бы вы решали ту или иную конфликтную ситуацию.

Я думаю, про это я напишу как-нибудь в следующий раз.

Источник

Как стать автоматизатором тестирования?

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Вчера, отвечая, кажется, в шестой раз на этот вопрос, твёрдо решил, что пришло время для написания статьи. Сразу отмечу – это исключительно моё видение, с которым, уверен, добрая половина мира автоматизаторов не согласится, – мой рецепт несколько сложнее, чем «почитать про тулзу», «поставить тулзу», «использовать тулзу», «написать в резюме, что умеешь пользоваться тулзой».

Эта статья полезна не только для мануальных тестировщиков, желающих автоматизировать свои рутинные проверки, но и для бизнеса и HR-ов, которые ввиду отсутствия каких-либо общепринятых критериев, как правило, понятия не имеют кто есть QA Automation Engineer и в большинстве случаев принимают решение на основании «хороший человек».

Бывает ещё хуже – руководитель/PM/etc… приходят к своим мануальным тестировщикам и говорят: «слушай, а может мы автоматизируем наше тестирование – это сэкономит нам кучу времени и денег. Скажи, какие книги тебе нужны и какие курсы».

Итак, мы узнаём, что такое примитивы, классы, объекты, полиморфизм, инкапсуляция, интерфейсы, абстрактные классы, статические поля, циклы, массивы, листы, мапы, потоки и так далее… Это изучение будет продолжаться в целом всё время, даже когда вы уже автоматизируете тестирование. Но на базовом уровне – Junior Java Developer – вы должны (если выбрали Java) быть знакомы с языком и иметь соответствующие навыки, потому как первичная локализация возникшей проблемы лежит на ваших плечах. Забудьте про «а вот у меня сценарий, ошибка наигрывается непонятно как и непонятно почему» — ваша задача, чтобы разработчик знал, что тут вот рядом человек может найти баги даже не запуская приложение. Не поверите, как вдруг качество продукта возрастает, когда есть человек, который не просто слышит запах плохо пахнущего кода, но и может предложить решения по улучшению.

Мы плавно перешли к

2. Использование шаблонов проектирования для разработки тестового фреймворка.
ДА-ДА. Вы открыли, например, Selenium, — всякие примеры, скопировали бездумно, написали на получившемся «фрэймворке» 1000 тестов. Приходит заказчик к бизнесу, говорит «мне тут нужно кое-что переделать», бизнес приходит к разработчику — «нам тут нужно немного подстроиться под рынок», разработчик всё прекрасным образом запиливает, — 90% тестов падают. Приходят к автоматизатору «мы тут немного поменяли, надо привести тесты в порядок», а автоматизатор в ответ «тут работы на месяц»… Упс…
Архитектура фрэймворка, который вы пишите, должна не просто быть гибкой, а должна постоянно стремиться минимизировать время рефакторинга имеющихся тестов и написания новых. В идеале, если разработчик и автоматизатор одновременно садятся исправлять что-либо, то автоматизатор должен сделать всё быстрее и предоставить разработчику некую форму TDD.

В создании такой чудо-архитектуры нам помогают паттерны проектирования и их грамотное использование… Builder, Facade, Factory, Null Object, Singleton, Adapter и многие другие паттерны активно помогают в решении подобных задач. Грамотная архитектура тестового фреймворка – это счастье для вас, для разработчиков, для бизнеса…и в конечном счёте для пользователя. Помните, что экспоненциальный рост ресурсов поддержки тестов при линейном росте/изменении функционала свидетельствует о том, что вам пора дорабатывать архитектуру движка. С наиболее полным списком паттернов с примерами на Java можете ознакомиться здесь. Отдельно отмечу Page Object Pattern, но лучше, сначала познакомиться с классическими.

3. Использование библиотек
То, что плавно вливается в любые задачи, — внешние API, библиотеки, драйверы и прочие прелести. Selenium — тестируем Web, Robotium/Espresso — тестируем Android, Fest/Jemmy — тестируем Java Swing, JemmyFX — тестируем JavaFX, замечательные Apache HttpComponents — делаем запросы и тестируем множество API, GSON — помогает приводить json к объектной модели и обратно и так до бесконечности… Библиотек прекрасных много написано почти под любую задачу — про некоторые из них можно почитать здесь. Не стоит бояться того, что их много — вы уже достаточно знаете, чтобы выбрать то, что вам подходит/нравится/вписывается в архитектуру. Например, под тестирование Java Swing приложений я использую JUnit, Fest, Mockito и широкие возможности java.lang.reflect — этого набора мне более чем хватает.

Будьте готовы к частому посещению stackoverflow и подобных ресурсов на ранних этапах. Будьте готовы к тому, что иногда надо будет заглянуть в исходники. И самое главное — не бойтесь не разобраться.

5***. Написание утилит и собственных библиотек
Тут звёздочки… У вас уже всё замечательно на проекте, регресс покрыт, тесты гоняются, разработчики спокойны и могут спокойно рефакторить архитектуру, не боясь сломать имеющийся функционал. Но, например, для того, чтобы что-то сэмулировать руками, разработчику приходится проделывать из месяца в месяц одно и то же действие руками. Напишите для него утилиту, оптимизирующую эти процессы, включите туда всякие невалидные сценарии, разрекламируйте на уровне компании, — пусть все начнут пользоваться… Это ускорит работу и, как ни странно, уменьшит количество багов, так как у разработчика появится больше времени на то, чтобы проверить побольше сценариев, прежде чем коммитить измненения в ветку. Оглядитесь по сторонам и вы увидите так много процессов, которые можно автоматизировать, что не будете знать, за что взяться.
Пишите достаточно абстрактные библиотеки, могущие быть использованными на разных проектах в вашей компании, да и просто в вашей работе в будущем.

P.S.
К бизнесу, руководителям, специалистам по подбору персонала:

Профессиональный автоматизатор тестирования в конечном счёте экономит деньги компании, я бы даже сказал, в краткосрочной перспективе. Смотрим сравнение очень близкое к реальности здесь.

Источник

Кто такой тестировщик и как им стать с нуля

Разбираемся, кому подходит профессия и что нужно уметь QA-специалисту.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Тестировщики, или QA-инженеры, — это люди, которые проверяют, как работает программа или приложение. Они ищут ошибки, смотрят, чтобы программа делала именно то, что задумано, защищают продукт от хакеров, проверяют, как приложение работает на разных устройствах и в разных операционных системах.

Тем, кто не работал тестировщиком, кажется, что это очень просто: понажимал все кнопки подряд, нашёл ошибку, сказал разработчику, и всё. На самом деле тестировщик — это сложная и творческая профессия на стыке IT, UX-дизайна и продуктового менеджмента.

Что делает тестировщик

Честно говоря, тестировщикам действительно приходится тыкать на все кнопочки и ссылки, заполнять все формы и стараться совершить все возможные ошибки, которые могут прийти в голову пользователю. Без этого не обойтись.

Неполиткорректные разработчики из-за этого когда-то обидно называли тестировщиков «обезьянками-кликальщиками». Термин был так распространён, что Android назвал свой инструмент для автоматизации тестирования MonkeyRunner — в том смысле, что он как обезьянка, только быстрее.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Программист, консультант, специалист по документированию. Легко и доступно рассказывает о сложных вещах в программировании и дизайне.

Но не думайте, что тестировщики лишь хаотично бьют по клавишам в надежде найти баг, — это непродуктивно. У них есть собственные методы для определения слабых мест программы и быстрого поиска ошибок.

QA-инженеры придумывают инструкции для тестирования — тест-кейсы. На элементарном уровне это выглядит так: аналитики пишут требования — какие данные должны быть на входе, как они обрабатываются, что должно получиться в результате; тестировщики пишут пошаговые инструкции для проверки программы на соответствие этим требованиям.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Тестировщик должен скрупулёзно проверить, что будет, если совершить какое-то действие, и соответствует ли результат ожидаемому.

Но ошибки коварны — в лабораторных условиях они могут себя и не проявить, зато пользователь наткнётся на них после релиза. Поэтому QA-инженеры придумывают разные стандартные и нестандартные ситуации, чтобы проверить, как поведёт себя программа. Это творческий процесс, для поиска скрытых багов приходится проявлять смекалку и аналитические способности.

Нужно предусмотреть все возможные и невозможные варианты. Что будет, если пользователь введёт цифры вместо букв? А что, если у него компьютер глючный? А вдруг сразу много пользователей будут работать и перегрузят систему?

Работа тестировщика — это бесконечное приближение к совершенству. Невозможно проверить всё, поэтому тестировщик должен работать так, чтобы совершить минимум действий, но найти максимум ошибок.

Мануальщики и автотестеры

Облегчить работу тестировщика помогают программы для автоматического тестирования. Автоматизация сокращает время тестирования и уменьшает рутину в работе. В больших проектах без автоматизации не обойтись: там очень много элементарных повторяющихся действий, никакого времени не хватит, чтобы все их проделать.

Всех тестировщиков делят на мануальщиков и автотестеров. Первые ищут ошибки в коде вручную, вторые пишут программы, которые делают это автоматически. Но это очень условное деление. Вы не найдёте автоматизатора, который не умел бы тестировать программу вручную. А многие мануальные тестировщики не любят рутину, поэтому осваивают языки программирования и пишут автоматические тесты. Опытные специалисты могут выполнять работу и мануальщика, и автотестера.

Может ли новичок-нетехнарь стать хорошим QA-специалистом

Порог входа в тестирование довольно низкий. Чтобы стать тестировщиком, не требуется техническое образование. Главное, чтобы человеку была интересна сфера IT и он хотел развиваться в этом направлении. Об этом говорит в своём интервью на hh.ru руководитель департамента обеспечения качества ПО Veeam Software Игорь Кацев.

На сайте Software-Testing.ru опрашивали тестировщиков из России и СНГ по поводу их образования. Оказалось, что в профессию приходят и достигают в ней карьерных высот разные люди: технари, гуманитарии, экономисты, юристы, люди с двумя высшими и люди без диплома вообще.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Насколько востребована профессия тестировщика

Тестировщики нужны во всех мало-мальски серьёзных IT-проектах. Большие компании предпочитают нанимать их в штат, малые работают с фрилансерами. О том, насколько востребованы QA-специалисты, говорят данные с сайтов по поиску работы:

Мануальщиков, не понимающих кода, работодатели не любят, даже если они прекрасно составляют тесты. Но и автоматизаторы, не знающие основ тестирования, тоже никому не интересны.

Вот, например, скрин с hh.ru, где работодатель перечисляет требования к тестировщику:

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Большим спросом пользуются универсалы, владеющие современными методами тестирования, знающие языки программирования, умеющие составлять и автоматизировать тесты, например:

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

На какую зарплату можно рассчитывать

Заработная плата тестировщика в регионах — от 55 до 60 тысяч рублей, а в Москве — 80–150 тысяч.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Новички могут рассчитывать на зарплату от 40 тысяч рублей, специалисты высокого уровня получают 220–300 тысяч.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Как развиваться тестировщику

Путей для карьерного роста много. Некоторые начинают с тестирования, чтобы потом уйти в разработку, но это не единственный вариант — можно развиваться и внутри профессии.

Младший специалист тестирует программы вручную по готовым тест-кейсам. Чтобы из «обезьянки» стать мидлом, нужно развиваться: досконально изучать проект, знать язык кода и основы автоматического тестирования.

Если джуниор хорошо себя зарекомендует, то через 2-3 года получит повышение и станет мидлом. Будет самостоятельно составлять тест-кейсы и заполнять документацию.

Ещё через год-полтора успешный мидл может претендовать на должность старшего специалиста (Senior QA Engineer). Его круг задач расширяется: синьор планирует работы по тестированию, контролирует работу джунов.

Лет через пять можно стать тимлидом — руководителем команды тестировщиков. От тимлида требуются профессиональные компетенции, навыки менеджмента, умение решать сложные задачи.

Так происходит карьерный рост специалиста по вертикали. Но на практике тестировщики часто выбирают развитие внутри профессии — например, специализации по тестированию:

Какие личные качества необходимы тестировщику

Кроме того, в тестировании очень важны личные качества специалиста. Вот список основных, без которых точно не обойтись:

Что надо уметь

От тестировщика требуется:

Кроме того, тестировщик должен владеть инструментами ручного и автоматического тестирования. Это могут быть:

Для автоматизации тестов понадобятся системы тестирования веб-приложений, программы для функционального и нагрузочного тестирования.

Ну и обязательно потребуется английский язык — для чтения и заполнения технической документации.

Где всему этому научиться

Если вас увлекла профессия тестировщика, можно самостоятельно изучить методики тестирования по книгам, мануалам и видео, а затем попытаться устроиться на работу на junior-позицию. Этот вариант рабочий, но займёт много времени.

Более простой способ стать тестировщиком — пройти обучение на онлайн-курсах. Вы освоите необходимые техники и инструменты, получите практический опыт тестирования крупного проекта. После обучения наши успешные студенты становятся специалистами middle-уровня.

Источник

Профессия: тестировщик

Тестировщик: Это баг или фича?
Разработчик: Пока что это фича.
bash.im

Инженер по тестированию — моя первая специальность в ИТ-сфере в далёких уже 2010-х, как, пожалуй, и у многих. Это было классическое «войти в айти»: на тот момент имелось только экономическое образование и 4 года опыта аналитической работы в телекоме. Из скиллов: горящие глаза, большое желание, среднее знание администрирования UNIX и выученная наизусть модель OSI (без особого понимания, что с ней делать дальше). 87 вопросов на собеседовании (от «что такое chmod 777» и «как работает ssh» до «расскажите о принципах работы TCP и поясните на примерах») — и должность инженера по тестированию у меня в руках. Чуть позже за 2 года было всё: гордость, отчаяние, разочарование, отличная работа, быстрый рост, крутой проект и т.д. Если бы я тогда знал о профессии тестировщика чуть больше, не было бы многих неприятных минут и часов. Ну, пусть тогда их не будет у тех, кто только выбирает свой путь или меняет его направление — эта статья для вас.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Кто это?

Тестировщик (буду называть именно так, чуть позже объясню, в чём причина оговорки), он же QA-инженер (Quality Assurance) — это специалист, который проверяет качество программного обеспечения и уровень его соответствия заранее определённым потребностям и ожидаемым результатам. В своей работе он использует различные инструменты, стратегии тестирования, включается в SCRUM-команды и т.д.

Иногда выделяют два основных «вида» тестировщиков.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

В общем и целом работу инженера по тестированию можно свести к такому порядку: получил ПО → определил необходимый набор тестов → сопоставил реальное положение косяков, костылей, велосипедов и багов с ожидаемым результатом работы программы (аппаратно-программного комплекса) → завёл баги → работаешь с ними, пока они не закроются. Всё это, конечно, в цикле.

Скажу сразу: первые несколько месяцев работы в тестировании напоминают день сурка, ты делаешь одно и то же, прогоняешь одни и те же тесты по нескольку раз, ставишь passed или failed, заводишь баги и, кажется, что это работа точно не для тебя, а скорее для школьника или мартышки. И это вот самоощущение чудовищно угнетает и столь же чудовищно неверно. Всё меняется, когда приходит опыт.

Вот какие этапы вы, скорее всего, пройдёте на работе тестировщиком «с нуля».

Первые 2-3 месяца — обучение. Если компания хорошая и продвинутая, вам дадут наставника, который поможет освоить все принятые в компании методологии тестирования, покажет оборудование, расскажет о ПО, задачах этого ПО и обязательно о клиентах. Иногда по итогам такого вот обучения с наставником вам даже придётся сдать небольшой экзамен (мини-собеседование). Это совершенно нормально, т.к. именно QA является важным подразделением на пути к клиенту и его хорошая работа — залог того, что ваш продукт в чьём-то бизнесе начнёт работать, а не лажать. Если компания не особо заботится о развитии сотрудников, вам придётся достигать всего самому, но я не скажу, что это очень плохо: при самостоятельном обучении погружение в ПО происходит гораздо глубже и вы понимаете значительно больше того, что расскажет опытный «ментор» о продукте, который ему отлично знаком.

Новичков в тестировании любят — иногда они находят самые интересные и неожиданные баги, на которые у давно работающих сотрудников «глаз замылился».

История. В одну компанию пришла новенькая девочка, которая никак себя не проявляла, тихо изучала софт и принципы его работы с разным оборудованием. Когда она только-только приступила к тестированию, от большого и злого федерального клиента прилетел critical (самый злой баг, хуже только блокирующий) — ПО отказывалось закрываться. Перелопатили весь код, орали друг на друга, проверили все соединения и т.д. Через три часа метаний девочка пропищала:
— А тут крестик неактивный.
Действительно, просто не работала одна-единственная и весьма очевидная функция. Но профессионалы забурились в дебри, а увлечённый дилетант сразу заметил ненормальное поведение.

Далее — от нескольких месяцев до 2 лет — ручное тестирование. Вы будете выполнять большинство видов тестов в ручном режиме, начнёте составлять свои тест-планы и взаимодействовать с разработчиками. На этом этапе наступает тот самый день сурка, когда кажется, что кони бегают по кругу и дальше — рутина и скука. Это не так. В этот промежуток времени инженер по тестированию наращивает интегральное понимание тестирования, учится работать с программистами, видеть не только сам баг, но и анализировать его возможные причины. Главное, что приходит за это время — осознание того, что ручное тестирование должно остаться в прошлом веке и… настаёт время перехода к автоматизации тестирования, когда вы начинаете осваивать язык программирования (или использовать ранее освоенный) и пишете свои скрипты — те, которые считаете нужными для работы с ПО. Наступает реально крутая часть работы. (Впрочем, многие тестировщики, особенно девушки, предпочитают остановиться на ручном тестировании и стать реальными асами именно в нём — кстати, весьма полезные сотрудники и, как показывает опыт, лучшие наставники для новичков).

От 2 лет и далее — квалифицированный специалист, готовый работать в офисе и на стороне клиента, тестировать крупные проекты, а не только фрагменты и модули, глубоко знающий свою специализацию и не очень глубоко все остальные, способный работать не только с профильным ПО, но и тестировать взаимодействия внутри различных конфигураций оборудования, ПО и интеграций. Такие ребята классно и доходчиво выступают на конференциях и митапах, делятся профессиональными секретами, обучают и… думают о своём дальнейшем карьерном пути. Об этом чуть ниже.

Работа тестировщика программного обеспечения хороша тем, что можно выбрать компанию, связанную с тем, что вам интересно в какой-то перспективе: можно тестировать телефонию, софт, бизнес ПО, игры, мобильные приложения, системы безопасности и т.д. Тестируя тот или иной продукт, вы глубоко в него погружаетесь, узнаёте изнутри и в дальнейшем сможете стать разработчиком или менеджером проекта/продукта с доскональным знанием предмета.

И да, тестирование является одним из оптимальный путей начала карьеры в ИТ-сфере, доступных большинству ребят с головой на плечах. Поэтому, если хочется, но пока не ясно чего и куда, идите в тестеры тестировщики, быстро прояснится.

Плюсы и минусы работы тестировщиком

Этого раздела не было в предыдущих постах серии о профессиях, но он будет здесь. Потому что вокруг работы инженеров по тестированию ходит много слухов, споров, кто-то её ненавидит, а кто-то посвящает ей всю свою карьеру. Поэтому давайте пройдёмся по тому, что хорошо, а что плохо.

▍Плюсы

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

▍Минусы

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Где нужен?

В отличие от разработчиков, тестировщик нужен не во всех компаниях, где выпускается хоть какое-то средство автоматизации или приложение (а зря! Но это решение самих компаний). Однако абсолютно точно тестировщики всех уровней нужны в ряде компаний.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Средняя заработная плата

Заработную плату будем смотреть на «Хабр Карьере». Возьмём данные за второе полугодие 2019 года, вне зависимости от владения тем или иным стеком.

Для специалистов ручного тестирования:

Уровень специалистаСредняя заработная плата
Стажёр (Intern)33 333 руб.
Младший (Junior)44 024 руб.
Средний (Middle)68 031 руб.
Старший (Senior)107 203 руб.
Ведущий (Lead)146 428 руб.
Уровень специалистаСредняя заработная плата
Стажёр (Intern)36 366 руб.
Младший (Junior)61 486 руб.
Средний (Middle)88 246 руб.
Старший (Senior)131 222 руб.
Ведущий (Lead)201 461 руб.

Как видите, есть все основания для того, чтобы развиваться и переходить на новый уровень тестирования.

Базовые требования к профессионалу

В этот раз таблиц с наиболее часто упомянутыми технологиями не будет, потому что методологии и инструменты тестирования от компании к компании могут здорово отличаться. Рассмотрим те навыки, без которых карьера ну совсем не получится (обратите внимание — вы их можете приобрести в ходе работы, иметь их на старте круто, но совсем не обязательно).

Кстати, если у вас совсем нет опыта, но есть немного времени, чтобы параллельно с учёбой подготовиться к будущей работе тестировщиком, у меня для вас есть три лайфхака.

Важные личные качества

В принципе, тестировщик может быть интровертом или экстравертом, геймером или ролевиком, добрым или не очень. Коммуникативные навыки играют в команде определённую роль, но в целом хватит общей адекватности и умения выражать свои мысли. В тестировании нужны другие, более тонкие настройки личности.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

Необходимость знания иностранных языков

Пожалуй, инженер по тестированию — редкий вид специализации в ИТ, где можно знать язык исключительно на уровне команд инструментов. Это связано с двумя важными особенностями:

У меня был пример, когда понадобился тестировщик со знанием японского и отдельно — со знанием немецкого в том числе для работы с клиентами (удалённо). Так вот, нашли, обучили и дали зарплату выше разработчиков в компании. Потому что специалисты уникальные. Они и сейчас не пропали 🙂

Где учиться

Базовый курс тестирования программного обеспечения есть на профильных специальностях в вузе, есть курсы в корпоративных университетах и отдельные курсы внутри компаний.

Принципиального обучения на инженера по тестированию в России не существует.

Пожалуй, именно для обучения тестированию я впервые из нашей серии «Профессия» выделю онлайн-курсы: они действительно могут ввести в курс дела, обучить принципам тестирования, научить находить, видеть и фиксировать баги и т.д. Для новичка можно найти приемлемый вариант и пройти его — это вам даст уверенность на собеседовании и задел знаний в первое время работы.

Лучшее обучение в этой сфере — пройти путь от стажёра до миддла или сеньора в компаниях. На фоне усилий по самообразованию — вообще идеально. Как правило, после первого полученного опыта в компании устроиться тестировщиком в другие довольно легко. Главное найти заветную первую практику 🙂

Лучшие книги и средства обучения

▍Книги

▍Онлайн-обучение

▍Полезные статьи на Хабре о самой профессии

▍Тусовки тестировщиков

К слову, если я скептически отношусь к конференциям по разработке, то конференции, митапы, фестивали и встречи тестировщиков рекомендую посещать и внимательно знакомиться с программой — вы можете заполучить себе в арсенал очень интересные находки и методики.

▍Википедия

Тестирование программного обеспечения — отличная статья в Википедии, которая разом познакомит вас с будущими задачами в профессии. Отдаю ей дань как самому первому источнику моих знаний о тестировании. Кстати, тогда она была гораздо скромнее.

Будущее тестировщика

Кроме стандартного пути внутри тестирования (от стажёра к лиду), есть несколько наиболее вероятных путей развития карьеры тестировщика.

Мифы профессии

▍Тестировщики — «низшая каста» ИТ-отрасли

Вот сейчас обидно было. Или это как у ВДВ, но «не кодил — не айтишник»? Отдел тестирования — это по сути настоящий отдел контроля качества, который не позволит компании опозориться перед клиентом (если где-то упадёт навороченный костыль, хе-хе), вовремя определит явные ошибки UI/UX, проверит внутреннюю логику работы приложения или сервиса. Комплексная работа тестировщиков всех ИТ-компаний мира обеспечивает определённый уровень качества и сохраняет миллионы денег компаний, которые могли бы потеряться на жалобах конечных пользователей на бесконечные баги.

Тестировщики — это полноценные, сильные ИТ-специалисты, которые отличаются комплексным подходом к ПО и АПК, глубоким знанием продукта и умением видеть неочевидные взаимосвязи внутри разработок.

▍Тестирование — это просто поиск ошибок

Нет. Тестирование — это сложный сквозной процесс работы с продуктом, его аппаратным и программным окружением, а также с документацией. Найти баг — очень малое дело, а вот проанализировать, воспроизвести, собрать всю информацию, снять дампы, составить тест-план и автоматизировать рутинные задачи, пустить нагрузку и т.д. это уже сложная, многопрофильная работа.

Тестировщик автоматизатор что это. Смотреть фото Тестировщик автоматизатор что это. Смотреть картинку Тестировщик автоматизатор что это. Картинка про Тестировщик автоматизатор что это. Фото Тестировщик автоматизатор что это

▍Тестировщикам мало платят

На первых порах это действительно не самая оплачиваемая работа. Согласитесь, компании обидно платить сотруднику, который по большей части учится. Но постепенно заработная плата растёт и дальше зависит от компании: когда я работал, я получал всего на 3 тыс. руб. меньше разработчика своего уровня (middle), но я знаю компании, где тестировщики получают и больше, и меньше, чем разработчики. Многое зависит от профиля деятельности компании и скиллов тестировщика. Понятное дело, что автоматизатор будет стоить дороже. Но формулировка «мало платят» точно не про тестирование.

▍Не применяются технические навыки

Я уже выше перечислил примерные действия тестировщиков, и все они строго инженерные. Хоть в тестирование можно попасть и без технического образования, работать без технического бэкграунда не получится: вы либо шустро всему научитесь, либо пойдёте в нетехнические отделы, потому что «голый гуманитарий» — горе в отделе QA. Да, на каком-то этапе от вас не потребуется глубокое владение языками программирования (но вы же запомнили, что тестировщики со знанием разработки выше ценятся?), но инженерные, админские и общетехнические знания вам ох как пригодятся. Вы их будете использовать буквально каждый день.

Главный совет

Здесь не будет совета, их в статье и так хватает. Я расскажу, что самое страшное в профессии тестировщика. Вот такое страшное, что до мурашек и головокружения. Самый первый самостоятельный заход на тестирование. Ты сидишь, проводишь тесты и ставишь passed, passed, passed… И ни одного, даже самого малюсенького, самого глупого и минорного бага! И ты боишься, что в тебе нет этого — видеть ошибки, отвечать за качество, находить что-то, что пошло не так. И какое же это счастье, когда находится он, первый, первая странность в заголовке пакета или первое слово интерфейса с опечаткой.

Потом у тебя будут мажоры, критикалы и блокирующие баги, ты будешь со всей важностью не только заводить баг, но и топать по коридору к разработчикам, чтобы высказать всё о найденной ошибке. Но ты никогда в жизни не забудешь тот самый первый баг, который откроет двери в мир тестирования и ответственности за качество.

Друзья, а вы прошли через работу в тестировании? Каким он был, ваш первый баг или самый глупый, смешной, может, даже страшный? Время жутких историй!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *