- Навыки и умения, необходимые тестировщику, а именно:
- Образование
- О зарплатах
- Чем занимается тестировщик
- Как выглядит карьера
- Альтернативный путь
- Нелепые мифы
- Как стать тестировщиком — идти по дорожной карте
- Экзамены и сертификаты
Навыки и умения, нужные чтобы стать тестировщиком
Давай обсудим твои скиллы, технические и не очень, нужные, чтобы стать тестировщиком.
Нетехнические умения
Аналитические. Хороший тестировщик должен обладать отличными аналитическими способностями. Это позволяет ему понимать сложные программные системы и «разбивать» их в уме на меньшие части, а также быстро продумывать тест-кейсы. Если нет уверенности в своих аналитических способностях, можно пройти проверку на этом сайте например; если удается решить хотя бы ОДНО задание — аналитические способности безусловно присутствуют.
Скиллы коммуникаций. Хороший тестировщик обладает хорошими вербальными и письменными навыками. Так называемые артефакты тестирования (то есть документы: тест-кейсы и планы, тестовые стратегии, баг-репорты и т.п.), создаваемые тестировщиком, должны легко читаться и быть понятными. Общение с программистами (насчет багов или по другим вопросам) требует определенной деликатности и дипломатичности.
Тайм-менеджмент и организованность. Иногда работа тестировщика бывает достаточно напряженной, а во время релиза так вообще. Надо уметь эффективно управлять своей нагрузкой, иметь высокую продуктивность, оптимально управлять своим временем, и иметь скилл организованности.
Правильное отношение к работе. Быть хорошим тестером — значит иметь добросовестное отношение к работе. Это значит иногда (иногда!) работать на износ, быстро ориентироваться в мелких деталях, страстно желать учиться новому, и постоянно совершенствовать свой рабочий процесс. В нашей индустрии технологии развиваются с умопомрачительной скоростью, а значит тестировщик должен совершенствовать свои скиллы, сообразно скорости внешних изменений. Отношение к работе должно всегда иметь некий оттенок самостоятельности, когда ты берешь на себя выделенное тебе задание, и выполняешь его без особого вмешательства и надзора.
Любовь к тестированию. Чтобы преуспевать в любой работе, надо ее все-таки любить. Тестер не исключение. Но как удостовериться, что ты нашел свою любимую работу? Просто попробуй поработать долго, отдавая все свое время, и если тестирование все-таки не нравится, то может быть стОит заняться чем-нибудь другим.
Технические скиллы
А вот этот список будет длинным.
Базовые знания баз данных/SQL. Обычно софт имеет за собой полновесную «подкладку» из массивов собираемых данных. Эти данные хранятся «на бэкенде», в системах баз данных типа Oracle, MySQL и так далее. Таким образом, тебе может понадобиться разобраться в этих базах, проверять и корректировать данные и т.п. Для этого понадобится хотя бы «шапочное» знакомство с языком запросов SQL, умение делать запросы простые или посложнее, чтобы проверить — а правильные ли данные хранятся в базах.
Базовые знания Linux, команды Linux. Очень многий софт, как-то веб-сервисы, базы данных, серверы — или работают на операционных системах семейства Linux, или плотно «подвязаны» к ним. Очень важно для тестеров знать Linux-команды.
Знание и опыт в системах управления тестированием. Управление тестированием — важный аспект тестирования. Если нет корректного управления, процесс не пойдет. Например, есть инструмент Testlink для отслеживания всех тест-кейсов, написанных командой разработчиков.
Есть и другие инструменты для управления тестированием. Итак, важно иметь знания и опыт работы с этими инструментами, они применяются во всех крупных компаниях.
Знания и опыт в инструментах отслеживания дефектов/багов. Отслеживание дефектов и жизненный цикл дефектов — ключевые понятия мира тестирования. Крайне важно правильно управлять дефектами и отслеживать их систематическим образом. Правильное отслеживание дефектов необходимо, потому что вся команда должна знать о них, включая менеджеров, разработчиков, и всех тестеров. Для отслеживания применяются инструменты QC, Bugzilla, Jira и др.
Знания и опыт с инструментами автоматизации. Если видишь себя в будущем в качестве «Automation tester» через пару лет работы в ручном тестировании, то надо отточить свои навыки в этом деле, получить глубокий опыт в инструментах автоматизации. Список бесплатных инструментов для автоматизированного тестирование можно найти в отдельной статье.
Примечание: сам по себе эпизодический опыт работы со средствами автоматизированного тестирования — недостаточен для успешного интервью: надо иметь хороший опыт, большую практику. Далее, очень желательно знать какой-то язык программирования, особенно скриптовый, типа JavaScript, или Python; или даже C#; это всегда поможет тестеру «перескочить» в автоматизированное тестирование. Есть компании, где все еще ищут людей с Perl, есть и тестеры знающие Perl, все это зависит от компании, но языки — важны.
Есть также множество инструментов для измерения производительности софта, поскольку это неотъемлемая часть общей оценки софта (и это часть так называемого нефункционального тестирования). Разумеется, ими нужно владеть.
Это что касается сугубо технических навыков. В принципе, обладать всеми ими в превосходной степени — не обязательно. Это зависит от рабочих обязанностей и компании.
Образование
Вообще, так называемый «академический бэкграунд», проще говоря формальное образование, подтверждаемое дипломами, у тестировщика должен быть из сферы того что называется общим термином «Computer Science», то есть специальности «Компьютерная Инженерия» и подобное, это достаточно широкий список специальностей (на Западе это называется что-то вроде BTech/B.E., MCA, BCA — Bachelor of Computer Applications, BSc-Computers и другое). Такая запись в дипломе радикально улучшает отношение интервьюеров.
Если такового диплома нет, то единственный путь документально доказать свои знания — пройти сертификацию разработчика; типа ISTQB или CSTE, что касается «Разработки программного обеспечения» или «Жизненный цикл тестирования», или по другим, близким спецификациям. А проверить свои знания прямо сейчас можно у нас на сайте на пробном тесте ISTQB: базовый уровень.
Оплата
Оплата труда тестировщика может сильно отличаться в разных компаниях, и зависит от рабочей нагрузки и знаний. В США зарплата тестировщика немного выше средней по стране, в России, Украине и Беларуси в несколько раз выше средней. Тестировщик в крупной компании может рассчитывать на медицинскую страховку, бонусы, лояльное отношение и пр.
Что делает тестировщик?
Обычный день тестировщика состоит из чтения документов описывающих требования к софту, написания тест-кейсов, отчетности, непосредственно поиска багов, посещения совещаний и тому подобная офисная активность, перемежаемая тимбилдингом на природе.
Путь тестировщика
Типичный тестировщик (QA Analyst на Западе) работающий в крупнейшей международной компании «индийского образца» (ставшего как бы своеобразным стандартом и не только в Индии), и с присвоенным уровнем «зрелости компании» уровня CMMI-5 идет к успеху примерно так:
- QA Analyst — тестировщик-новичок
- Старший тестировщик (Sr QA Analyst) — за плечами 2-3 года опыта
- QA Team Coordinator (координатор QA-команды), 5-6 лет опыта
- Тест-менеджер (8-11 лет опыта)
- Старший тест-менеджер (более 14 лет опыта)
Альтернативный путь
Если не перевариваешь ручное тестирование, можешь глянуть другие близкие сферы.
Автоматизированное тестирование: в качестве Automation Test Engineer будешь отвечать за автоматизированное выполнение тест-кейсов, ручное выполнение которых может быть затратным по времени. Тулзы которые надо знать: IBM Rational Robot, Silk performer, и QTP.
Тестирование производительности: В качестве тестировщика подвида «performance test engineer», будешь проверять скорость приложения (то есть время, потраченное на загрузку в рабочее состояние); или максимальную нагрузку которую может «выдержать» приложение. Инструменты: WEBLoad, Loadrunner.
Бизнес-аналитик: Одно из редких преимуществ, которое есть у тестировщиков перед разработчиками — хорошее понимание бизнес-«подкладки» разрабатываемых приложений. Совершенно разумный способ делать дальнейшую карьеру для тестировщика: стать бизнес-аналитиком. В таком качестве будешь отвечать за анализ и оценку бизнес-модели своей фирмы, ее рабочих процессов. Бизнес-аналитик «сочетает» различные модели работы в компании, помогает внедрять новые технологии.
Мифы о тестировщиках
Считается, что разработчики зарабатывают больше, чем тестировщики
Вопреки мифу, тестировщики (QA-инженеры) получают не меньшую зарплату, чем junior-разработчики, по крайней мере так происходит в «передовых» компаниях. Работа тестировщика не является «низкооплачиваемой».
Тестировать — утомительно
Тестирование софта действительно может «тестировать» твои нервы, как только ты понял, как далек твой софт от прописанных Business Requirements, глядя на свежие тест-кейсы. Вообще тестировать — не утомительно. Вот что утомляет: делать одно и то же по многу раз. Ключевой способ избежать утомления — пробовать что-то новое. В целом, если пообщаться с разработчиком с хотя бы 3-летним опытом, то он может рассказать, сколь утомительны бывают рабочие дни.
Как стать тестировщиком
Если полный ноль, то, вкратце, нужно освоить Selenium, Jmeter, TestLink. То есть поначалу нужно стараться освоить «базу», после этого софт, и можно пробовать подаваться на фриланс, брать мелкие заказы. Это поможет получить практические знания и укрепить понимание базовых принципов, уже изученных.
Далее переходишь к Selenium (средство автоматизации) — далее к JMeter (средство оценки производительности), и потом осваиваешь TestLink (средство управления тестированием). Во время освоения этого софта можно пробовать подавать резюме на фриланс-заказы.
После завершения освоения нужных инструментов, можно (и нужно) думать о сертификации. Советуем сертификат ISTQB.
Еще больше о развитии тестировщика можно узнать в нашей большой статье «Дорожная карта развития тестировщика»
Сертификация
Сертификат Фонда ISTQB — практически базовая сертификация в «Тестировании». Иметь такой сертификат вовсе не обязательно, однако сертификат значительно повышает шансы на «серьезное» трудоустройство. Многие компании требуют такой сертификат.
Тестировщик с сертификатом уровня ISTQB получает больше преимуществ, как в зарплате, так и в продвижении по карьерной лестнице.
Сертификация удостоверяет, что претендент на должность обладает скиллами тестирования; но обладатель может параллельно выступать в качестве фрилансера; это также ценится работодателями на крупных проектах.
Также можно получать отдельные сертификаты по владению какими-либо инструментами тестирования.