Чем занимается инженер по тестированию и как начать работать в этой области
Инженер по тестированию контролирует качество IT-продукта. Он находит ошибки, записывает их в отчет и передает разработчикам. На старте нужны минимальные технические навыки, поэтому такая профессия считается одной из точек входа в сферу IT. Фёдор Зволинский, руководитель службы тестирования Яндекс.Браузера, поделился особенностями работы инженера по тестированию и рассказал, какие качества помогут стать экспертом в этой области.
Работа инженера по тестированию, или, как мы говорим, тестировщика, экономит ресурсы компании и команды разработки. Продукт тестируют разными способами на каждом этапе. Чем раньше найдены ошибки, тем проще и дешевле для компании будет их исправить.
Инженер по тестированию хорошо знает продукт, понимает бизнес-процессы и может предложить решение проблемы, исходя из своего опыта. Миссия тестировщика — поддерживать баланс между интересами пользователя, целями менеджмента и возможностями разработчиков. Курс «Инженер по тестированию» Яндекс.Практикума рассчитан именно на это направление.
Задачи тестировщика
Инженер по тестированию отвечает за аудит качества продукта. Есть много направлений проверки. Например, проверка на соответствие функциональным или нагрузочным требованиям. Сохраняется ли история заказов в приложении вызова такси — это проверка функции продукта. Выдержит ли сайт, если 100 покупателей одновременно оформят покупку, — это тест на устойчивость к нагрузке.
Тестировщик проверяет код на соответствие всем требованиям и в процессе находит баги — ошибки, из-за которых продукт работает неправильно. Например, в приложении для поиска отелей не запускается сортировка по цене за ночь. Или сервис выдает ошибку при попытке добавить товар в корзину. Тестировщик проходит весь пользовательский сценарий: совершает покупки, вызывает такси, настраивает личный кабинет и так далее. Если что-то работает неправильно, фиксирует ошибку.
Тестировщик составляет тестовую модель. Он изучает структуру продукта и продумывает порядок проверки всех элементов, функций и состояний. Например, на начальных этапах нужно описать всё, что пользователь видит на разных страницах и экранах: как ведут себя фотографии товаров при наведении, есть ли чат поддержки и как его вызвать. Когда продукт меняется или усложняется, тестировщик вносит изменения в тестовую модель.
Еще одна задача тестировщика — автоматизация. Объем тестирования постоянно растет, а инструменты автоматической проверки для разных направлений тестирования помогают экономить время. Тестировщик постоянно работает над тем, чтобы контроль качества продукта становился еще надежнее и быстрее.
Тестировщик всегда может поставить себя на место клиента. Он понимает, зачем создается продукт и в чём его польза. Если главные функции работают неправильно или ими неудобно пользоваться, он способен объяснить проблему и разработчику, и менеджеру. Технические знания и пользовательский кругозор помогают всё точно сформулировать и в некоторых случаях предложить решение.
Как работает тестировщик
Работа тестировщика делится на этапы. Вначале он собирает всю информацию, изучает и анализирует требования к продукту. Следующий шаг — выбор методов тестирования и создание тестовой модели. Затем он проводит все тесты, а после них пишет отчет, где указывает ошибки, дает ссылки на технические требования и по возможности предлагает решение проблемы. Заключительный этап — проверка исправленного продукта.
Первый этап. Сбор информации
Сначала нужно изучить задачу: какие требования и условия были у нового продукта, как это работает на практике и всех ли в команде устраивает результат. Всё это можно узнать у разработчиков и менеджера продукта.
На этом этапе очень важны навыки общения с командой. Чем лучше тестировщик разберется в задаче, тем проще ему будет создать качественную и полную тестовую модель. Также нужно хорошо понимать, чего от нового сервиса или сайта ждут пользователи. Для этого стоит вникнуть в бизнес-процессы, посмотреть аналитику.
Второй этап. Анализ
Для работы на этом этапе важно понимать техническую документацию, знать требования к продукту. Если тестировщик не ориентируется в терминах и плохо понимает, как устроено приложение или сайт, здесь могут возникнуть проблемы.
Тестировщик разбивает все глобальные процессы в продукте на самые маленькие блоки. Чтобы проверить, как работает приложение, он будет отдельно тестировать каждую страницу, кнопку и действие.
«Если вы тестируете показ всплывающего окна, то такими маленькими блоками могут стать отрисовка всплывающего окна и условия показа. Отдельно проверяем, как окно будет отображаться для пользователя, и оцениваем логику показа без тестирования пользовательского интерфейса. При таком тщательном подходе в тестовой модели будет меньше ошибок, а проверка пройдет быстрее», — говорит Фёдор Зволинский.
Цель этого этапа — понять, что нужно тестировать. Качественный анализ помогает точно оценить время, которое понадобится для проверки.
Третий этап. Разработка тестовых сценариев
Тестовые сценарии описывают действия в системе, условия и ожидаемый результат. Задача инженера по тестированию — выбрать такой сценарий, который лучше всего подходит для проверки продукта.
Тестировщик составляет тест-кейсы — описание всех условий и шагов тестирования. Он ссылается на требования к продукту, указывает нужные настройки для тестовой среды, перечисляет все действия. Для каждого пункта тест-кейса тестировщик описывает результаты: ожидаемый и фактический.
Чтобы получить полный набор тестов без дублирования, специалисты пользуются техниками тест-дизайна. Это стандартные методики проверки для разных сценариев и отдельных функций. Знание основных техник помогает сэкономить время.
«Простой пример: есть функция, которая считает суммарную стоимость купленных билетов в кино. При этом стоимость одного билета известна, а купить можно не более восьми билетов за раз. В таком случае мы можем воспользоваться двумя техниками, которые были придуманы до нас: классами эквивалентности и граничными значениями. Сначала нам нужно проверить, что функция действительно всё правильно считает. Возьмём значение из середины, допустим, 5. Если с результатом всё будет в порядке, следует проверить границы — 1 и 8, а также точки снаружи границ — 0 и 9. Таким образом мы создали всего пять тестов. А если бы мы перебирали все значения от 0 до 9, нам потребовалось бы десять проверок. Экономия времени и усилий в два раза», — объясняет Фёдор Зволинский.
Цель этого этапа — решить, как проводить тесты, выбрать инструменты и методику.
Четвертый этап. Тестирование
Следующий шаг — автоматическое или ручное тестирование. Специалист проходит все этапы, которые описаны в тест-кейсе и проверяет работу продукта. Например, если нужно найти ошибки в верстке, тестировщик использует валидаторы HTML/CSS. Достаточно указать путь к приложению или сайту, и сервис покажет все обнаруженные ошибки.
Проверить продукт на совместимость с браузерами и операционными системами помогают эмуляторы. Это программы, которые воспроизводят возможности разных устройств — ПК, планшета или смартфона — с разными операционными системами. Эмуляторы удобны, когда продукт нужно протестировать одновременно на Android и iOS: не нужно ничего загружать на устройство, все действия выполняются на виртуальном аналоге.
Поиск уязвимостей или перформанс-тесты — для каждого направления тестирования нужен свой инструмент. Существуют специальные программы, которые решают отдельные задачи тестирования автоматически.
Можно управлять организацией тестирования с помощью сервисов. Например, они позволяют создавать тест-кейсы и назначать ответственных за выполнение тестирования. Такие инструменты нужны для того, чтобы привести весь процесс в порядок и не потерять данные предыдущих тестов. Каждая компания выбирает свой подход к тестированию исходя из задач проекта.
Пятый этап. Подготовка отчета
Ошибки нужно описать и показать. Кроме текста тестировщик готовит скриншоты или видео, где можно увидеть ошибку. Всё, что удалось обнаружить, нужно зафиксировать в специальных программах. Для этого используют Bugzilla, Redmine, Mantis, HP ALM. Если процессы в компании еще не настроены, работают с Word и Excel.
Отчет с описанием всех проблем и ошибок тестировщик передает разработчикам и менеджерам. Иногда нужно уточнить, является ли обнаруженный эффект ошибкой или команда изначально заложила его в идею продукта.
Описывать ошибки нужно так, чтобы разработчик или менеджер могли повторить все действия, которые к ней приводят, и увидеть проблему. Подробное описание помогает и на следующем этапе, когда нужно выяснить, действительно ли все ошибки исправлены.
Шестой этап. Проверка исправленного продукта
Нужно свериться с отчетом об ошибках и убедиться, что все проблемы устранены. Если всё работает правильно, тестировщик отмечает, что все обнаруженные ошибки исправлены. Продукт готов к запуску.
Что нужно для старта
Минимальные технические знания помогут тестировщику лучше ориентироваться в задачах и общаться с командой разработки. Пригодится умение читать код, базовые навыки системного администрирования, понимание принципов работы с данными. Еще важно разбираться в особенностях разных операционных систем, браузеров и устройств.
Собеседование с будущим инженером по тестированию обычно строится вокруг понятий тест-дизайна и тест-кейсов. Нужно понимать, для чего пишутся тестовые сценарии, как оценивать эффективность тестирования и какие подходы лучше использовать для разных случаев. Работодатель ждет, что кандидат разбирается в процессе разработки ПО, понимает, какие специалисты за что отвечают и к кому обратиться за информацией, необходимой для тестирования. Преимуществом будет понимание моделей разработки: каскадной, итеративной, спиральной.
В профессии тестировщика очень важны софт-скиллы. Нужно уметь договариваться с другими, аргументировать свою точку зрения и принимать чужую. Главные качества инженера по тестированию — внимательность до дотошности, перфекционизм и сильное структурное мышление. Такой специалист быстро освоит профессию и поможет улучшить продукт.
Станьте тестировщиком!
Образ современного тестировщика. Что нужно знать и уметь
Бытует мнение, что простейший путь к IT лежит через тестирование. Мол, знать ничего не нужно, уметь и подавно, достаточно желания и готовности не сильно щуриться от боли и слёз, когда тебе прилетает очередной набор тест-кейсов для регрессионного тестирования.
Отчасти это даже правда, но, скорее, для ситуации, которая была на рынке лет 10 назад. Сейчас же всё обстоит несколько иначе. Причин для этого масса, и они самые разные. Если отметить ключевые, то, пожалуй, это:
Возросшие требования к тестировщикам, их знаниям и квалификации, так как всё чаще решаются задачи чуть сложнее, чем «клик-клик — и в продакшен». Работа тестировщиков становится всё более «инженерной», требует технической подкованности, специфических знаний, навыков и компетенций. Тестировщики всё чаще становится QA-инженерами (кто в теме, тот понимает разницу).
Возросшее предложение на рынке, когда толпы вчерашних «гражданских» ринулись в пучину IT, подогреваемые обилием информации: от конференций и книг до статей и курсов по тестированию ПО. Ваш покорный слуга в своё время также приложил руку к созданию пары общедоступных курсов по причине желания тиражировать базовые вещи из своей профессиональной области (посмотреть можно здесь и здесь).
Поэтому сегодня всё реже можно полагаться исключительно на морально-волевые качества для входа в IT в свете возросших аппетитов рынка и обилия конференций, курсов, тренингов, литературы, статей и прочих информационных источников, которые находятся на расстоянии вытянутой руки начинающих специалистов.
Безусловно, всё больше компаний стараются выращивать специалистов у себя под крылом, осыпая счастливчиков новыми знаниями и навыками, заодно повышая лояльность к компании. Однако и в этом случае перед компаниями и их специалистами встают животрепещущие и острые вопросы…
Как не потеряться в многообразии информации, которой наполнен интернет и мир вокруг?
Что учить самим или чему учить своих бойцов?
В своей статье я постараюсь в общих чертах рассказать, что нужно знать и уметь, чтобы работать специалистом в области обеспечения качества в наиболее популярных и востребованных направлениях. Поехали!
Нижепредставленные специальности составляют преобладающую долю рынка спроса и предложения тестировщиков, а потому (и ввиду отсутствия достаточного и актуального опыта работы) в статье, увы, не будет разделов про perfomance и десктоп-специализации.
Материал для этой статьи базируется на собственном опыте работы с блестящими специалистами моих команд, на результатах преподавания в МГУ, МГТУ и онлайн-курса, а также на сотнях проведённых собеседований и десятках нанятых QA-специалистов разных профилей. Не претендую на исключительную правоту своего взгляда, однако считаю, что мой опыт позволяет моей точке зрения быть достаточно компетентной.
Черты характера
Было бы странно полагать, что с возросшими требованиями к техническим аспектам работы тестировщиков значимость личностных качеств уменьшилась или исчезла вовсе. Более того, я уверен, что черты характера лежат в основе успешного специалиста и имеют решающее значение при схожих знаниях и навыках. Ведь мы работаем не с human-интерфейсами к Stack Overflow и Википедии, а с живыми людьми, которые остаются таковыми и в офисе, и дома. Поэтому так важно учитывать качества личности в контексте предстоящего выбора отрасли, профессии и специальности в ней.
Почему я так считаю? Всё очень просто! Я легко могу отправить специалиста на курсы или конференцию, заказать книги или провести тренинги по нюансам тест-дизайна, языкам программирования, SQL, сетям и прочим техническим аспектам, чтобы через некоторое время получить первые результаты и в дальнейшем приумножать их, закрепляя полученную информацию на практике. Однако нельзя отправить на курс «Как перестать бегать за офисными плюшками и начать инвестировать в собственные знания», «Как перестать быть безответственным вруном и начать жить честно», «Как перестать быть серой мышью и стать увлечёным человеком», «Как перестать ненавидеть людей и научиться работать в команде» и рассчитывать на ощутимый результат после прослушивания. Увы, это правда жизни, внутреннее несогласие с которой позволяет широкому пласту «инфобизнесменов» зарабатывать на непокорных, жаждущих изменить свои фундаментальные столпы и черты характера единичным тренингом или серий онлайн-вебинаров. Именно поэтому так важно обладать на старте правильной жизненной мотивацией и качествами для работы в IT и в QA в частности. Итак, что же важно?
Мотивация учиться и склонность к самообучению
Честно ответьте себе на вопрос: нравится ли вам учиться? Не разово, а на постоянной основе. Готовы к единственному прыжку, который волшебным образом выведет вас «в дамки», или страстно желаете ежечасно и ежеминутно впитывать в себя новые знания? IT — это сфера, где достаточно неудачно моргнуть, и вы уже на обочине индустрии. Не стоит рассчитывать, что прочитав за год книгу по тестированию, вы раскроете для себя врата в дивный мир новых знаний, которые позволят вам быть в тренде на десятилетие вперёд. Идеально, если для учёбы вам не всегда нужен мудрый наставник и учитель и вы в состоянии самостоятельно усадить себя за новую книгу, вебинар или курсы.
Ответственность
Оцените свой уровень ответственности. Простой способ: озвучьте для начала сами себе несколько своих самых крупных ошибок в жизни. Не получается? Речь не о вашей безупречности, вспомните, что не ошибается только тот, кто ничего не делает. Вспомнили? Если только пару мелочей, то это грустный показатель. Хуже только, если вспомнив ошибки прошлого, вы тут же внутренне обвинили в них кого-то другого или обстоятельства, а не признали свою ответственность за произошедшее. А вот если вы вспомнили парочку крупных фейлов, где виноваты были именно вы, да ещё и вспомнили как их исправили, то дела с вашей ответственностью обстоят сильно лучше. Вышка — это когда вы не только исправили ошибку, но и застраховались от неё на будущее так, чтобы она не повторялась. Ответственный подход к работе — залог успешной карьеры в любой области, а потому и для тестировщика это крайне важная черта. Главное — не перегибать и знать меру, ведь гиперответственность — не всегда хорошо.
Увлечённость
Вы увлечённый человек? Вот честно, чем вы увлекаетесь? Ничем особенным? Или это много мелких хобби, которыми вы занимаетесь раз в год? Может, что-то большое, но времени постоянно не хватает, а потому хобби ждёт лучших времен. Человек остаётся человеком и в офисе, и когда выходит из него. И если человек действительно увлечён чем-то в обычной жизни, значит, и в работе его можно чем-то увлечь настолько, что он будет засиживаться вечерами или изучать вопрос на выходных по собственной инициативе. Задача грамотного руководителя и самого специалиста — найти такие задачи. Конечно, важно при этом доводить начатое до логического завершения и не бросать на полпути. Тестировщик не может быть «сухарём». А вот если он горит своей работой и продуктом, то результативность такого сотрудника будет выше.
Гибкость поведения
Важная черта для работы в современных IT-компаниях и в QA в частности — это гибкость. Новые знания и веяния приходят со скоростью ветров Юпитера, устоять в стиле Гендальфа Серого «Ты не пройдёшь!» перед индустрией крайне сложно и не всегда целесообразно. А потому довольно важно уметь подстраиваться под новые условия работы, будь то генеральная линия компании, новые продукты, команда, методологии работы или инструменты. Чем гибче сотрудник, тем больше шансов у него карьерно развиваться в IT.
Коммуникабельность и контактность
Без сомнений, можно быть успешным специалистом, будучи довольно замкнутым, но при этом глубоко погружённым в свою задачу, однако научиться чему-то новому и обучить окружающих больше шансов у общительного и контактного человека. Необязательно каждому быть великим оратором и публично выступать на мероприятиях, но важно уметь находить общий язык с коллегами, грамотно изъяснять свои мысли устно и письменно. В работе тестировщика это довольно важные черты, ведь общаться нужно много и часто, и чем больше вы про QA, тем глубже и детальнее вы погружаетесь в смежные сферы, где умение выстроить коммуникацию — половина успеха.
Командность
Тестировщику необходимо быть командным игроком. Неважно, работаете вы в сервисной модели тестирования или тестировщики интегрируются внутрь каждой команды. Очень важно, чтобы вы давали «чувство плеча» своей команде, чтобы они могли положиться на вас, а вы на них. Один в поле не воин — для тестировщиков это ещё и история про дальнейший рост в карьере. Ведь именно команда, как ваше ближайшее окружение, является первостепенным источником знаний, которые вы будете получать о продукте, процессах и технологиях. Если вы командный игрок, то в тестировании вы добьётесь бóльших успехов, чем одиночка.
Инициативность и решительность
Как известно, под лежачий камень вода не течёт, а потому инертность выйдет вам боком и в профессии тестировщика. Хороший тестировщик — проактивный, не ждёт пинка от коллег и руководителя, а сам приходит с новыми решениями и предложениями. Если тестировщику один раз сказали «это не баг, а фича», то он не должен опускать руки. Вместо этого надо брать инициативу и излагать свою точку зрения. Безусловно, не стоит впадать в крайности и спорить по любому поводу, но и соглашаться со всем, что скажут, не стоит. В основе работы хорошего тестировщика не только критическое мышление, подвергающее проверке на прочность окружающий мир, но и умение в нужный момент сформировать собственную позицию и отстоять её перед окружающими.
Этот список можно ещё продолжать и дополнять, я выделил ключевые черты на основе собственного опыта. Безусловно, речь не идёт о том, что если у вас нет этих качеств, то вы профнепригодны. Но можно с уверенностью утверждать, что чем меньше из заявленных качеств будет в вас, тем будет сложнее и вам самим, и вашей команде, и вашему руководителю. Любые исключения допускаются, что лишь подтверждает правило.
Основы тестирования
Нижеперечисленные знания и навыки нужны абсолютно любому тестировщику вне зависимости от его специализации. Эти вещи — основа основ, учатся быстро и легко, особенно если тут же закрепляются практикой. Настоятельно рекомендую всем без исключения начинающим специалистам погрузиться в заявленные ниже темы. Вооружившись этими знаниями, вы сможете открыть для себя бескрайний мир тестирования ПО, со временем освоив любое из направлений, но знания, заложенные в фундамент, останутся востребованными всегда.
Классификация видов тестирования
Даже начинающий тестировщик должен иметь базовые представления о различных видах тестирования, когда они используются и для чего. Это сухая теория, которая сама по себе не нужна, но без неё «класть поверх» практику может быть мучительно больно и долго, а попутно ещё и велосипедов выдумаете, да граблей известных соберёте. Не ленитесь, ознакомьтесь, благо источников уйма. Зато потом с лёгкостью сможете на собеседованиях проходить задачки уровня «протестируйте карандаш».
Локализация ошибок и багрепортинг
Мало ошибку найти. Крайне важно ошибку нужным образом локализовать, установив как можно больше обстоятельств и условий для её стабильного воспроизведения. Более того, необходимо обрести навык составления качественных баг-репортов. На своих лекциях и при работе с командой я часто использую следующее сравнение: «Ваш баг-репорт хороший в том случае, если вы вышли на улицу, взяли за руку первую попавшуюся бабушку, и она смогла воспроизвести дефект по вашему описанию или верифицировать его отсутствие».
Техники тест-дизайна
Базовые вещи, которые часто в том или ином виде проверяют на собеседованиях или в домашних заданиях, давая задачки уровня «протестируйте форму для ввода чисел» и «напишите автотесты на нашу форму авторизации». Важно не просто зазубрить, что такое «классы эквивалентности» или «анализ граничных значений», но и уметь использовать различные техники в любых условиях, комбинируя их.
Системы баг-трекинга, управления знаниями и тестами
Канули в небытие те времена, когда баг-репорты писали на листах, а тестовую документацию, чек-листы и тест-кейсы вели в гугл-доках (да-да, я знаю, что некоторые до сих пор пишут, и иногда это даже удобно). На смену этому самопалу пришли профессиональные инструменты — баг-трекинговые системы (из наиболее популярных стоит отметить Jira, Redmine), системы управления знаниями (Confluence, Wiki и другие) и системы управления тест-кейсами (TestRail, Zephyr, TestLink и т.д.). Базовые принципы работы с инструментами можно получить, вписываясь в открытые программы бета-тестирования или установив софт самостоятельно (на рынке есть как бесплатные решения, так и условно-бесплатные в масштабе ознакомительных сессий).
Методологии разработки ПО
Глубокого понимания методологий разработки ПО на начальных этапах тестировщику, может, и не потребуется, важно хотя бы на пальцах понимать отличия наиболее популярных (Waterfall, Scrum и Kanban). Но со временем ему придётся погружаться всё глубже и глубже в методологии, подбирая соответствующие подходы и техники при тестировании в контексте того или иного процесса разработки. Важно быть готовым к такому и уделять определённое внимание этой стороне вопроса.
Клиент-серверная архитектура
Большинство современного ПО строится на китах клиент-серверного взаимодействия. Тестировщику важно быть в контексте этой архитектуры, понимать принципы её работы, основные преимущества и недостатки. Это позволит не только лучше проводить испытания в ходе своей работы, но и при необходимости понимать, каким образом найденные дефекты нужно локализовывать, правильно определяя, на чьей они стороне.
Операционные системы
Принципы работы операционных систем, что они из себя представляют и какие вообще бывают — общие знания, которые, как правило, упрощают жизнь тестировщика. Даже понимание трендов замещения десктопных ОС мобильными, а также владение навыками работы с ОС на уровне пользователя уже плюс. А если погружаться в этот вопрос глубже, то со временем необходимо будет обзавестись навыками настройки и использования целой плеяды ОС (из самых популярных стоит отметить Android, Windows, iOS, macOS, Linux).
Клиентское тестирование веб-приложений
Один из наиболее простых и распространённых способов попасть в тестирование — начать тестировать веб-приложения. Эта специализация — одна из самых распространённых на рынке, однако ей на пятки вовсю наступает направление клиентского тестирования мобильных приложений. В любом случае нужно понимать, что такой вектор развития — один из наиболее доступных в самом начале карьеры. По этой тематике есть масса обучающих материалов и статей. При желании потом можно развиваться в любом другом направлении, чаще всего это автоматизация или всё те же мобильные устройства (например, после освоения тестирования веб-приложений под мобильные устройства).
Браузеры
В контексте клиентского тестирования веба важно понимать устройство тонких клиентов, браузеров в частности, а также их отличия, специфику рендеринга и работы скриптов, движков под капотом, версионности, дополнительного инструментария браузеров и т.д. Тестировщику важно всегда держать в голове популярность использования того или иного браузера у реальных пользователей продукта, чтобы распределять тесты наиболее эффективным способом. Самые популярные: Google Chrome, Safari, Firefox, Opera, Internet Explorer.
Консоль разработчика в браузере
Веб-тестировщик должен уметь пользоваться консолью разработчика в браузере (как минимум работать с элементами на странице и сетевыми запросами). В случае работы с элементами страницы тестировщик должен понимать, как локализовать их или при необходимости изменить, а в случае с сетевым взаимодействием — уметь разбираться в последовательности запросов и полученных ответов. В идеале нужно знать различные http-методы (GET, POST, OPTIONS и другие), знать коды ответов (10Х-50Х), уметь читать заголовки и тела ответов.
HTML, CSS, JavaScript
Чтобы тестировщик лучше понимал, из чего состоят и как устроены современные веб-страницы, будет крайне полезно иметь хотя бы базовое представление о HTML, CSS, JavaScript. Эти знания также помогут локализовывать ошибки, связанные с конкретными элементами на странице, быстро находить их и при необходимости менять на клиентской стороне.
Бэкенд-тестирование
Отдельная вселенная — это бэкенд-тестирование. Этот мир лишён рюшек и красивостей, в нём нет места графическим интерфейсам, только мерцающий курсор в консоли, горы текста и чистая логика приложений. Специфическое направление тестирования, которое не всегда легко даётся новичкам. Обычно требует более тщательной технической подготовки специалиста на старте.
Модель OSI
Базис, с которого стоит начинать бэкенд-тестировщику, — это модель OSI. Несмотря на то, что в большинстве случаев тестировщику вряд ли пригодятся уровни ниже прикладного и представительского, будет неплохо, если он будет понимать, где находятся эти уровни относительно других, в чём их специфика и как они применяются.
REST. SOAP. JSON-RPC
REST, как архитектурный стиль клиент-серверного взаимодействия, лежит в основе современного интернета. Понимание требований к REST-архитектуре должно быть в арсенале знаний бэкенд-тестировщиков, равно как и знания о стандартах, используемых в нём (HTTP, JSON, XML). В отдельно взятых направлениях не менее важным может оказаться знание протоколов SOAP (а вместе с ним XML, XSD, WSDL) и JSON/XML-RPC, их возможностей и ограничений.
Командная строка
Без навыков владения командной строкой бэкенд-тестировщик не сможет обойтись в большинстве случаев. На начальном этапе достаточно будет базовых вещей в духе работы с папками и файлами, их создания, чтения, перемещения и т.п. Эти знания позволят тестировщику, например, работать с серверными логами для локализации дефектов. А со временем вы уже не сможете обходиться и без bash-скриптов, работы с файловыми дескрипторами, конвейерами и регулярками.
cURL. Postman. SoapUI
Для тестирования REST API на стартовом уровне отлично подойдёт утилита командной строки cURL, которая позволит тестировщику отправлять тестовые запросы и получать ответы, разбирать их и сравнивать фактический результат с ожидаемым. Более продвинутым и одновременно более казуальным (за счёт наличия GUI) инструментом тестирования API является Postman, навыки использования которого также весьма полезны. А если нужно тестировать SOAP API, то идеально подойдёт инструмент SoapUI (на самом деле с ним можно тестировать и REST API).
Базы данных
Тестировщику важно знать и уметь работать с СУБД, в первую очередь с SQL (MariaDB, MySQL, PostgreSQL, MS SQL). И наиболее востребованным является знание SQL. Очень часто в описании вакансий есть упоминания про этот навык, который звучит как «Знание SQL на уровне простых запросов». Как правило, для начала достаточно знать базовые вещи уровня INSERT, SELECT, DELETE, UPDATE, WHERE, ORDER BY, в некоторых случаях нужны JOIN, INNER JOIN, RIGHT JOIN, LEFT JOIN. Кроме того, несомненным плюсом будут знания и навыки работы с NoSQL БД (MongoDB, Cassandra). Они позволят тестировщику сверять ожидаемые и фактические результаты в ходе выполнения тестов при работы с данными.
Клиентское тестирование мобильных-приложений
Молодое и, пожалуй, самое популярное направление в тестировании. Оно наименее исследовано, здесь не так много устоявшихся канонов, сильнейшие флуктуации то и дело охватывают эту специализацию. С одной стороны, это довольно простое для освоения направление на первых порах, с другой — требует от тестировщика быть постоянно на острие трендов, знаний и навыков, чтобы не вывалиться за обочину истории.
IDE
Для тестировщика мобильных приложений важно освоить на базовом уровне среду разработки (XCode для iOS, Android Studio для Android). Знания этих инструментов позволяют осуществлять локальные сборки приложений, при необходимости и с помощью разработчиков конфигурировать их под нужды тестирования, лучше локализовывать баги, читая клиентские логи, и даже работать с исходниками приложения. Кроме того, в IDE есть возможность запуска приложения через эмулятор, что может пригодиться тестировщику.
Инструменты мониторинга HTTP/HTTPS-трафика
Тестировщик обязан понимать клиент-серверную архитектуру и уметь локализовывать ошибки с её учётом. И если в тестировании веб-приложений для этого обычно хватает консоли разработчика, то для мобильных приложений нужно использовать специализированное ПО (Charles, Fiddler, Wireshark), которое позволит перехватывать и анализировать сетевые запросы. Т.е. с помощью этих инструментов в большинстве случаев можно довольно точно определить, на чьей стороне проблема. Более того, они позволяют подменять запросы, эмулируя то или иное поведение ПО (как со стороны клиента, так и со стороны сервера). Это нужно не только для локализации проблем, но и для проведения ряда испытаний в рамках тестирования приложения.
Сервисы дистрибуции мобильных приложений
Для тестирования разных версий приложений необходимо иметь базовые навыки работы с сервисами дистрибуции мобильных приложений, например, Fabric (Crashlytics), HockeyApp, TestFlight. Они позволяют не только получить нужные сборки для тестов, но и анализировать статистику использования, а также работать с падениями приложений, локализуя проблемы и выясняя их причины.
Автоматизация тестирования
Я не стал разграничивать автоматизацию тестирования по направлениям, выделив её в отдельную специализацию. Безусловно, есть ряд принципиальных различий между автоматизаторами тестирования веба, бэкенда и мобильных приложений, но в этом разделе мне хотелось бы консолидировать наиболее важные знания и навыки, которые востребованы инженерами по автоматизации тестирования вне зависимости от их специальности. Стоит отметить, что автоматизация тестирования сама по себе довольно сложна не только с технической точки зрения, но и с точки зрения практик тестирования. А потому настоятельно рекомендую смотреть в эту сторону, предварительно освоив не только общие моменты, но и одно из направлений, перечисленных выше. Если вы научитесь тестировать руками, вам будет проще и понятнее заниматься автоматизацией.
Язык программирования
Обилие языков программирования открывает перед тестировщиками широкие возможности для получения новых знаний и навыков для применения на практике. Выбрать из многообразия языков наиболее подходящий — непростая задача. Рекомендую руководствоваться тремя принципами.
Первый:
сложность обучения языкам — штука довольно относительная, ведь кому-то проще даётся модный стильно-молодёжный Python с динамической типизацией, а кому-то легче с жёстко типизированной и структурированной Java со статической типизацией. Важно попробовать и понять, твоё это или нет.
Второй:
ориентируйтесь на сообщество, у которого вы сможете обучиться языку. Это в равной степени может быть как внешнее комьюнити (форумы, курсы, тренинги и т.п.), так и внутреннее (коллеги по цеху тестирования или даже разработчики). Однако стоит помнить, что равняться исключительно на коммьюнити не стоит, особенно если речь идёт о разработчиках. Безусловно, они эксперты в области своего языка, но не стройте радужных иллюзий, что они начнут помогать вам писать функциональные автотесты на регулярной основе (это очень редкий кейс), да и в специфике тестирования они далеко не всегда могут быть столь же компетентными.
Третий:
ориентируйтесь на тестовые фреймворки и инструменты, которые используют в связке с языком программирования, и их популярность в среде тестировщиков. Это поможет вам в случае возникновения специфических проблем не остаться наедине с трудностями и найти поддержку на стороне.
На основе опыта последних лет самыми популярными языками в контексте тестирования я бы назвал Python, Java, PHP, а в мире мобильной разработки — нативные языки Kotlin, Objective-C и Swift.
Тестовые фреймворки
Дабы тестировщику не приходилось начинать автоматизацию с изобретения собственных велосипедов и чтобы, минимизировать встречу с граблями, автоматизаторы тестирования часто используют тестовые фреймворки (xUnit, nose, unittest, pytest, TestNG, Cucumber) в зависимости от языка, на котором пишут тесты. Важно освоить эти базовые фреймворки, чтобы сделать работу с тестами наиболее эффективной и удобной.
Драйверы и надстройки для автоматизации тестирования
Помимо тестового фреймворка специалисты по автоматизации тестирования должны использовать драйверы, которые позволяют взаимодействовать с приложением через программный интерфейс вместо графического. Без них не обойтись, если вы собираетесь автоматизировать клиентские приложения. Если вы собираетесь работать с вебом, то обязательно нужно изучить Selenium WebDriver, если с iOS — XCUITest, а для Android вам пригодятся Espresso и UI Automator (нативная поддержка от Google), вариативно — Robotium или Selendroid. Для пущего удобства используют надстройки, которые, с одной стороны, усложняют инструментарий специалиста по автоматизации, а с другой — дают дополнительные возможности. Особое внимание рекомендую тут уделить Appium и Cucumber.
Системы отчётности результатов автотестов
Какие бы автотесты вы ни писали, по завершению было бы неплохо иметь возможность получить отчёт о проведённом тестировании, да такой, чтобы не мельтешило в глазах от строчек текста. Наиболее популярной сейчас, пожалуй, можно назвать разработку отечественных коллег — Allure. Инструмент всё чаще используется для удобной визуализации результатов выполненных автотестов, в нём есть возможность группировки тестов по компонентам вашего приложения или задачам, в контексте реализации которых проводятся испытания.
Системы контроля версий
После того как вы напишете свой первый автотест, вам непременно захочется писать ещё и ещё, а затем модифицировать, ускоряя работу, расширяя логику, углубляя проверки, а потом и поделиться результатами с коллегами. Хранить каждую из версий ваших тестов локально, раскладывая по различным папкам, архаично, трудоёмко и неудобно. Поэтому логично перенимать лучшие практики от программистов и научиться пользоваться системами контроля версий. Из наиболее популярных стоит отметить Git, SVN, Mercurial, TFS. Замечу, что Git доминирует на рынке и при прочих равных стоит использовать именно его. На начальном этапе тестировщику потребуется знание того, что такое commit, push, pull (force), fetch, checkout, branch, merge, rebase, revert.
Системы непрерывной интеграции
Запустив свой первый автотест, вам непременно захочется делать это ещё и ещё, а со временем даже поделиться с кем-то этой возможностью. И тут на помощь придут инструменты непрерывной интеграции, такие как Jenkins, TeamCity, Bamboo. Скорее всего, у коллег-разработчиков есть свой CI-инструмент для сборки проектов, возможно, даже и для запуска unit-тестов. Чтобы примкнуть к ним со своими функциональными автотестами будет здорово, если вы будете понимать принципы работы этих инструментов. А если ничего подобного у коллег ещё нет, тогда вы будете первопроходцем и сможете делать удобные параметризированные запуски своих автотестов (на разных хостах, с разными данными и т.д.) по факту изменений, запросу или по расписанию.
Возврат инвестиций от автоматизации тестирования
Последним, но не наименее важным, является знание методики подсчёта возврата инвестиций от автоматизации тестирования. Речь идёт хотя бы о приближённом представлении, какие тесты стоит автоматизировать и поддерживать, а какие лучше даже не пытаться. Если коротко, то отталкивайтесь от важности функционала и тест-кейса, который вы собираетесь автоматизировать, закладывайте трудозатраты и сложность разработки автотеста, а также потенциальную потребность, частоту и сложность его обслуживания и поддержки. Ведь одно дело, когда речь о ключевом нативном функционале, на который написаны все элементы фреймворка и прогнозируются минимальные трудозатраты на поддержку автотеста, и совсем другой разговор, когда речь идёт об автотесте на экспериментальную фичу, которую раскатили на 1% аудитории, фреймворк ещё не поддерживает этот функционал, который вдобавок интегрируется с нестабильными внешними сервисами, да ещё и переделывать егособираются ближайшие пару месяцев. Уметь определять, когда писать автотест, а когда нет — важный навык для специалиста по автоматизации тестирования.
Управление командой тестирования
Помимо становления экспертом в области тестирования популярным путём развития современного тестировщика является рост вертикальный, в управленца командой тестирования. В идеальном кейсе управленец должен уметь делать то же самое, что и команда, которой он будет руководить, однако это не обязательно. Если при этом он будет в части вопросов компетентнее своей команды — ещё лучше, но вот что уж точно чрезмерно, так это абсолютное превосходство во всех вопросах. В конечном итоге, управление командой — это история про обмен опытом, знаниями и компетенциями. Какими же личностными и профессиональными качествами должен обладать хороший тимлид?
Лидерство
Я глубоко убеждён, что лидерство — прирождённое качество, недаром Генри Форд говорил: «Спрашивать, кто должен быть боссом, всё равно что спрашивать, кто должен быть тенором в этом квартете». Тем не менее, можно научиться лидерству. Ведь есть и обратное мнение, что лидерами не рождаются, а становятся. Безусловно, лидерские качества, есть в каждом из нас. Другое дело, что для одних руководить и воодушевлять людей —это дар и мана небесная, а для других — кошмар и адовые муки. Сложно себе представить, что кто-то из читателей сознательно выберет путь развития в управленцы, зная, что это будет приносить дискомфорт и неприятности. Всё-таки с желанием быть лидером у управленца значительно больше шансов на успех.
Решительность
Управленец должен уметь принимать решения. Кажется, что это очень просто, но люди часто сталкиваются с собственной нерешительностью. Когда речь идёт о серьёзных вещах, то некоторые люди и вовсе впадают в ступор, всячески оттягивая принятие решения, опасаясь ответственности и последствий. Для управленца это неприемлемо, поэтому ему важно развивать свою решительность, чётко понимая ситуации, когда действительно есть время для принятия решения, а когда нужно действовать здесь и сейчас.
Формирование команды
Умение работать с командой, формировать её, направлять и развивать — важные качества руководителя. Группа людей — ещё не команда. Изначально у них могут быть разные цели и задачи. Пока они не объединены идеей, не мотивированы и не жаждут плечом к плечу преодолевать трудности, они не могут быть командой. Задача хорошего руководителя — сплотить людей, склеить их, подбирая задачи и выставляя цели, которые будут приводить к формированию настоящей команды. Для этого потребуется и умение подбирать новых людей, и находить подход к своим сотрудникам, а при необходимости и с кем-то попрощаться. Вам надо научиться работать с разными людьми, развивая свои способности находить общий язык с командой, формировать её и развивать для эффективной совместной деятельности.
Планирование
Навык планирования нужен и рядовому специалисту, а для руководителя он становится необходим, как воздух. Ведь управленец распоряжается не только своим временным ресурсом, но рабочим временем целого подразделения, а потому должен уметь распределять его грамотно, вдумчиво и эффективно. На начальном этапе необходим как минимум уровень тактического планирования — на день, неделю, месяц. В конечном итоге руководитель должен научиться мыслить стратегически, ставить задачи не только на видимый горизонт событий, но и перешагивать за него. Это, несомненно, сложно, однако не значит, что этому не нужно учиться. Нужно! Особенно, если вы хотите стать хорошим руководителем.
Навык убеждения и ведения переговоров
Становясь руководителем, вы должны уметь отстаивать не только свою позицию, но и точку зрения вашего подразделения, лицом которого вы по сути являетесь. А это значит, что, во-первых, вы должны научиться убеждать в собственной точке зрения свой коллектив, а во-вторых, в некоторых ситуациях должны уметь принимать и отстаивать мнение своей команды. Вести переговоры от лица своих сотрудников — сложная задача, и получить этот навык автоматом не получится. Потому начинающему тимлиду стоит обратить внимание на прокачку этого навыка, а опытный и так уже знает, что без умения грамотно аргументировать и защищать свою позицию руководителю будет крайне сложно найти общий язык и внутри коллектива, и за его пределами.
Позитивное мышление и умение мотивировать
Руководитель — глава подразделения, от его взгляда на вещи зависит и поведение его сотрудников. На вас лежит ответственность за моральное состояние команды, её боевой дух и уровень мотивации. Руководителю важно понимать, что у каждого сотрудника свои мотиваторы, и способы воздействия на членов коллектива должны быть разными. Хороший руководитель источает не только уверенность в завтрашнем дне и решительность в своих поступках, но и позитивное отношение к вещам, которое он транслирует своей команде, приободряя её, ставя новые задачи.
Итого
Итак, чтобы войти в IT через тестирование, знать нужно довольно-таки много, а чтобы развиваться и стать профессионалом — ещё больше. Важно понимать, что у вас всегда есть выбор — быть экспертом в определённой области с глубоким погружением в специальность или стать широкопрофильным специалистом. На рынке требуются и те, и другие, так как всё зависит от конкретной компании, принципов формирования команд и рабочих процессов. Если уверены, что вам это действительно интересно, и что эта дорога вам по зубам, смело ступайте по ней, впереди много удивительных открытий и новых знаний.
Еще раз хочу напомнить о важности определённого характера для работы в IT и тестировании в частности. Помните, что на курсы по языкам программирования и СУБД можно отправить любого, а вот на курсы по тяге к саморазвитию и увлечённости, которые бы позволили бы успешно пройти первые курсы, увы, отправить никого не получится.
Надеюсь, что статья оказалась полезной для тех, кто её прочитал, будь то новичок или опытный специалист, ведь выбор профессиональных линий развития в области тестирования достаточно велик, чтобы в нём слегка потеряться. Напомню, что вся эта история — in my humble opinion, а потому не судите строго и не забрасывайте тапками. Буду благодарен за конструктивную обратную связь.
Всем качества!
Работа тестировщиком без опыта — вся правда !
Однажды, в очередной кризис, у меня опять резко закончились деньги. И я опять начал искать, где их взять. И тут мне на глазу попалась заметка, в которой рассказывалось про работу тестировщиком без опыта. Имеется в виду, тестировщик программного обеспечения. Это меня заинтересовало. Что это за такой “недопрограммист”, который зарабатывает немного меньше “взрослого” программиста. Да еще и в баксах?
Несколько смущало то, что непонятно, где учиться этой “чудо-профессии”. И как потом зарабатывать. И можно ли стартануть в этой профессии без опыта и без обучения? В статье было написано все слишком “в общем”. Поэтому я решил разобраться во всем досконально сам. И докладываю вам результаты…
Ну а в конце статьи Вы узнаете про самый главный кошмар тестировщика…. Ну что, поехали ?
Содержание статьи
- Тестировщик ПО Vs QA инженер. Кто есть ху ?
- Где научиться тестированию программного обеспечения
- Краудтестинговые платформы – “ясли для тестировщика”
- Работа QA инженером “по взрослому”
- Плюсы и минусы работы тестировщика
- А сколько же можно заработать на тестировании ПО ?
- Требования к тестировщику
- Личностные качества тестировщика ПО
- Мифы про профессию тестировщика
- Главный кошмар тестировщика
Тестировщик ПО Vs QA инженер. Кто есть ху ?
Итак. Для начала вообще нужно понять. А что это за профессия такая? И есть ли отличие между тестировщиком и QA инженером? Тестировщик программного обеспечения – это такой человек, который выискивает “косяки” в программах. Ошибки. Под программами подразумевается ооооочень широкий круг…. программ. От веб-сайтов до прошивки смарт телевизоров.
Так вот, работа тестировщика программного обеспечения как раз и заключается, чтобы по специальному алгоритму находить такие ошибка максимально эффективно.
Тестировщик ПО чем-то похож на охотника. Он также терпеливо выслеживает ошибки. И должен обладать терпением и внимательностью.
А кто же такой QA инженер? В переводе с буржуинского, Quality Assurance engineer, то бишь инженер, который гарантирует качество программы.
Вообще, если по секрету, тестировщик ПО и QA инженер – это фактически одно и тоже. И работу тестировщик ПО и QA инженер делают одну.
Только так сложилось, что тестировщик – это чаще всего начинающий специалист. Который ищет ошибки по разработанным другими людьми схемам. Обычно без всякой автоматизации. Ну тестировщик ПО обычно и не силен в программировании. Работает обычно на фрилансе.
А QA инженер – это уже “прокачанный” тестировщик. Он уже может и сам писать тест-планы. Может автоматизировать работу. Знает один или несколько языков программирования. Работает в штате компании.
Где научиться тестированию программного обеспечения
Ответ на этот вопрос достаточно простой. Если у Вас нет опыта в программировании, и хочется побыстрее начать работу тестировщика без опыта, то… изучайте краудтестинговые платформы. Что это такое? Об этом ниже…
На этих самых платформах обычно есть достаточно подробное обучение. И даже тестовые задания. Пройдя это обучение и выполнив успешно тестовое задание Вы уже будете понимать, кто и как делать.
Единственное, что часто такое обучение идет на английском языке. Хотя и достаточно простом. Но ведь Вы же знаете английский, не правда ли… 🙂
Если же Вы хотите работать в QA инженером, то без хороших курсов не обойтись. Я сейчас не буду рекламировать те или иные курсы. Их много. Только учтите, что эти курсы обычно достаточно дорогие. И длятся несколько месяцев.
Здесь Вас будут учить всем премудростям тестирования. И скорее всего заодно и основам нескольких языков программирования.
К сожалению, Вузовского образования по профессии QA инженер или тестировщик ПО я не нашел.
Ну и еще вариант обучения работе тестировщика, если у Вас нет опыта – это устроиться помощником QA инженера в какую-либо фирму. И там в процессе работы Вы всем у и научитесь. Ну и в должность Вас тоже введут. Не без этого…
Краудтестинговые платформы – “ясли для тестировщика”
Итак, как я уже писал выше, получить начальный опыт работы тестировщиком без опыта можно на так называемых краудтестинговых платформах.
Что это такое краудтестинговые платформы? Это такие своеобразные биржи фриланса. С одно стороны на них обитают заказчики, которым нужно что-то протестировать. С другой – специалисты по тестированию ПО.
Работа практически на всех краудтестиновых платформах строится по одному принципу. Есть какое-либо вводное обучение. Далее идет вводные тест. Если все хорошо, Вас допускают к реальным проектам. И Вы можете начать прокачивать свой рейтинг, ведь от этого будет зависеть и Ваша “зарплата”.
А “доход” обычно начисляется в английских тугриках. И в принципе он достаточно неплохой.
Но… Важно знать. На большинстве краудтестинговых платформ оплата идет ТОЛЬКО за найденные ошибки! И причем, Вы должны найти эти ошибки раньше других тестировщиков. Если опоздали или не нашли, чтож… Нет ножек-нет мультиков 🙂
Да. Помните. Чем “крупнее” ошибки Вы находите, тем выше Ваше вознаграждение!
Краудтестинговые платформы в основном “буржуинские”. Вот некоторые из них. Часть только на английском (или немецком языках). Часть переведена (не полностью) на русский. Но велика вероятность получения задания на английском языке.
Если Вы работали на одной их них, оцените ниже, какая понравилась больше.
https://test.io/ – одна из старейших платформ краудтестинга
Мне нравится2Не нравится
https://www.testbirds.com/ – есть вариант для русскоязычных пользователей.
Мне нравится1Не нравится
https://www.passbrains.com/ – еще один сайт для тестирования ПО
Мне нравитсяНе нравится
https://www.globalapptesting.com/ – еще краудтестинговый сайт
Мне нравитсяНе нравится
https://ubertesters.com/ – еще одна (немецкая) платформа для тестирования
Мне нравитсяНе нравится
https://testlio.com/ – еще ловите сайтик для тех, кто ищет работу тестировщика ПО без опыта
Мне нравитсяНе нравится
https://www.crowdtesting.ru/ – и еще. Это уже на русском языке, что является редкостью в мире тестировочных платформ.
Мне нравитсяНе нравится
Про условия работы на этих сервисах лучше сами посмотрите у них. Заодно и с платформами ознакомитесь.
Работа QA инженером “по взрослому”
Вообще, если Вы хотите “настоящей” работы, то идите работать на постоянную занятость в нормальную компанию. QA инженером. Ну или инженером по тестированию.
Здесь в отличие о фриланса, Вам будут платить именно за работу, а не за найденные баги.
Где же найти работу тестировщику ПО без опыта? Да много где! Главное, пройти хорошее обучение. О чем я писал выше.
Итак. QA инженера с распростертыми объятиями ждут:
- Фирмы-разработчики любого программного обеспечения
- Разработчики игр
- Разработчики мобильных приложений
- Финансовые компании, например банки. Или биржевые брокеры
- Системные интеграторы. Если Вы не знаете, кто это такие, то не просто запомните название 🙂
- Иногда заводы или производственные фирмы
- Веб-студии
- …..
Короче, без работы не останетесь! А самое приятное в этом, что работа тестировщика очень востребована в западных фирмах. И оплачивается, соответственно лучше…
Плюсы и минусы работы тестировщика
Почему Вам СТОИТ искать работу тестировщика ПО ?
- Эта работа проще, чем у программиста. Во всяком случае, до определенного уровня
- Высокая востребованность профессии тестировщика ПО. Без работы точно не останетесь!
- Часто свободный график! И даже у штатных сотрудников!
- Можно работать удаленно. Из любой точки мира.
- Вы увидите продукт со всей стороны. Можете перейти на другую должность. Программист. Или…. коммерческий директор
Почему Вам НЕ СТОИТ искать работу тестировщика ПО ?
- Никто не любит тестировщиков. Особенно программисты. Вы же находите их ошибки!
- Достаточно скучная работа. Смотрели “День сурка”? Вот примерно так..
- Тестировщиков часто назначают “крайними”. Ведь за ними ошибки-то никто не ищет!
- Работа тестировщика сродни работе шпиона. Он боец невидимого фронта. “Медали” дают реже!
- Часто бывает сверхурочная работа. И не всегда оплачиваемая.
- Огромная ответственность. Не работает программа ? А куда смотрел тестировщик?
Ну и подумайте сами, что для Вас в итоге перевесит. Минусы или плюсы?
А сколько же можно заработать на тестировании ПО ?
На фрилансе, то есть на краудфандинговых платформах, ориентируйтесь на сумму от 5 $ до 500 $ в месяц. Как я уже писал выше, “улов” в основном зависит от количества и качества найденных багов. То есть, нередко можно работать, работать и получить кукиш с маслом 🙁
Хотя иногда есть и работа для фрилансера с оплатой “за работу” а не “за найденные ошибки”.
А вот если Вы пойдет работать “в штат”, то тут уже зарплаты более серьезные. Данные на “сейчас” по России
Для специалистов ручного тестирования:
Для специалистов автоматизированного тестирования:
Так что, все в Ваших руках. Кстати, в зарубежных компаниях зарплаты выше.
Требования к тестировщику
Ну если Вы ищите работу тестировщиком с нуля и без опыта, то для Вас и требования будут нулевые (чуть не написал “обнулённые” 🙂 ).
А вот если Вы хотите стать крутым тестировщиком, то смотрите, что Вам нужно знать:
- Один или несколько языков программирования. Наиболее востребованы C++, С#, Java, SQL, Python
- Архитектуру ПК и серверов
- Основы Linux
- Модель OSI
- Инструменты управления тестированием, багтрекеры
- Владение стратегиями тестирования на профи уровне
Личностные качества тестировщика ПО
Но это еще не все! Для успешной работы тестировщиком у Вас должны быть прокачаны:
- Внимательность
- Мозоли на попе усидчивость
- Аналитические навыки
- Умение управлять временем
- Психическая устойчивость
- Интуиция
Впрочем, все это можно со временем развить.
Мифы про профессию тестировщика
Немного поговорим про мифы профессии тестировщика.
- Тестировщики – это подсобные рабочие программиста. Недопрограммисты..
Конечно же, это ошибочное мнение. Часто тестировщики имеют более “продвинутые” знания, чем программисты. И более широкий кругозор. Из тестировщиков часто выходят отличные програмисты. А вот наоборот – редко.
- Тестирование – это простой поиск багов
На самом деле это достаточно сложный процесс. В котором увязано огромное количество самых разных операций. И тестировщик все то должен увязать в единую стройную систему.
- Тестировщики мало получают
Ну по началу может и так. Но… продвинутые тестировщики, или точнее QA инженеры, получают зарплаты, сравнимые с зарплатами программистов. Ну Вы и сами это видели немного раньше.
Главный кошмар тестировщика
А вот и главный кошмар QA Инженера
Нет.. Это был не кошмар тестировщика, а один день из его жизни.
А кошмар тестировщика, это когда Вы первый раз начинаете тестировать. И… ничего не находите! Совсем ничего. Даже самую малюююююсенькую ошибку! Вы начинаете сомневаться в себе. И тут, о радость, нашлась родимая! Вот она ошибочка! Такие дела!
В завершении темы
Самое главное. Поработав тестировщиком, можно развиваться как “вширь”, так и “вглубь”. То есть, или прокачивать и дальше свои профессиональные навыки тестировщика. Или направить свой взор в сторону профессионального программирования! И там, и там Вы сможете развиться и заработать денег!
А вот, кстати, и таблица рейтинга краудтестинговых платформ… Составлена по Вашим лайкам и дизлайкам выше…
www.globalapptesting.com
0
Теперь Вы знаете, что такое как работать тестировщиком без опыта. Если у Вас есть опыт подобной работы – то поделитесь. Буду рад услышать Ваше мнение.
Ваш Nаставник онлайN
Александр Бессонов
Кто такой тестировщик. Обзор изнутри от Евгения Шидловского
Про профессию рассказывает Евгений Шидловский, ведущий инженер-программист (lead software test automation engineer) в EPAM и преподаватель курса «Тестирование ПО» в IT-Academy.
Продолжаем цикл материалов про ИТ-специальности. Каждую из них описывает «типичный представитель» — опытный специалист. Мы надеемся, этим материалы помогут школьникам, студентам, переквалификантам, джуниорам и сочувствующим выбрать специальность в ИТ, оценить перспективы или просто сверить часы с авторитетным коллегой. Обсуждайте и дополняйте материал в комментариях, чтобы сделать его ещё полезней.
Евгений Шидловский в профессии более семи лет. До того, как стать тестировщиком, 10 лет работал военным врачом. В составе медицинской бригады участвовал в миссии ООН в Ливане. После курсов в IT-Academy попал на стажировку в лабораторию EPAM и через 11 дней получил оффер. В компании прошёл путь от функционального тестировщика до руководителя команды автоматизаторов.
Тестировщик (или специалист по тестированию программного обеспечения) — это человек, который проверяет работу приложений и ищет в них всевозможные ошибки и уязвимости.
Он руководствуется технической документацией, а иногда и просто здравым смыслом. Ведь тестировщик пытается посмотреть на приложение глазами не только разработчика, но и пользователя. Поэтому иногда он «вмешивается» в процесс разработки и предлагает добавить в программу более удобные функции.
Обычно тестировщик занимается проверкой самой программы, её работоспособности и внешнего вида. Но порой к этим задачам прибавляется проверка и технических инструкций, и баз данных, и бизнес-процессов, и нужд заказчика, и даже работы команды разработки.
В своей работе тестировщик постоянно взаимодействует с представителями заказчика, бизнес-аналитиками, разработчиками и дизайнерами.
Вся команда нацелена на создание «правильного» продукта, но тестировщик — человек, которого больше всего интересует именно качество продукта.
Какие бывают тестировщики
Их много. Ситуация усложняется ещё и тем, что в разных компаниях одинаковые по сути роли могут называться по-разному.
На рынке труда чаще всего встречается функциональный (мануальный, manual QA engineer) тестировщик. Это человек, который придумывает тесты и «вручную» проверяет программы на баги и уязвимости.
Автоматизатор (test automation engineer) пишет код, который автоматизирует процессы тестирования.
Эти две специальности наиболее распространённые, и дальше мы будем говорить в основном о них.
Иногда в отдельную роль выделяют security-тестировщика — человека, который занимается проверкой систем безопасности. BI (business intelligence) — тестировщик, которы работает с большими объёмами данных. В некоторых компаниях есть целые отделы performance-тестирования — контроля производительности ПО и нагрузок на приложения. Usability-тестировщики проверяют, насколько продукт удобен в использовании и привлекателен для пользователя.
Есть тренд на смешение разных специальностей и практик тестирования. Компаниям выгодно, чтобы специалист умел делать разные вещи.
Кто такие QA и QC
Один из самых частых вопросов на собеседованиях тестировщиков: чем отличаются QA от QC? Вопрос философский, и мне приходилось слышать очень разные ответы на него.
Традиционно под QA (Quality Assurance) понимается нечто глобальное: обеспечение всего процесса разработки, начиная от выбора методологии и специалистов и заканчивая общим контролем качества.
QC (Quality Control) — так иногда называют среднестатического специалиста по функциональному тестированию, который проверяет, насколько разработка продукта соответствует всем требованиям.
Встречается ещё третье понятие — Testing, или процесс тестирования продукта.
В каком-то смысле QA, QC и Testing — всего лишь разные этапы работы, которые выполняет тестировщик. В некоторых больших компаниях есть QA-отделы, где специалисты не занимаются функциональным тестированием вообще: они хорошо знают стандарты заказчика и следят за тем, чтобы вся команда работала по этим стандартам.
В вакансиях на рынке труда функционального (мануального) тестировщика могут называть и QA, и tester, и test engineer. Это разные наименования для одной и той же профессии.
Есть также понятие «тестировщик-универсал». В профессиональной среде мы называем таких людей «миксами». Это тестировщики, которые умеют почти всё: знают теорию и разные виды тестирования, умеют придумывать и оформлять тесты, владеют языками программирования и автоматизируют процессы. Сегодня наблюдается большой спрос именно на таких специалистов. По своему опыту могу сказать, что наличие «микса» в команде резко повышает эффективность работы.
Также существует такое понятие, как TestOps (по аналогии с DevOps). Иногда употребляются термины DevTestOps и DevTestSecOps. Это специалист, который помимо тестирования ещё занимается поддержкой всей инфраструктуры: разворачивает и обслуживает сервера, автоматизирует тесты и процесс сборки приложения.
Содержание работы тестировщика
Типичная последовательность работы функционального (мануального) тестировщика выглядит примерно следующим образом.
- Изучить спецификацию продукта (программы).
- Разработать методы для проверки продукта.
- Провести проверку продукта.
- Сделать выводы по итогам проверки.
- Перечислить найденные уязвимости и недочеты продукта в техническом документе (чаще всего на английском языке).
Главная обязанность автоматизатора — на основе готовых тестов написать код, который будет автоматически делать то же самое, что делает мануальщик вручную. Важно, чтобы автоматизатор умел кодить, но и не забывал методы функционального тестирования. Ведь до того, как создать код, нужно придумать и эффективный тест для проверки приложения.
В нашей профессии существует две крайности. Одна крайность — специалист, который замечательно придумывает тесты, но совсем не понимает кода. Вторая крайность — разработчик, который занимается автоматизацией, но никогда не учил теорию тестирования. Он может писать замечательные автотесты, но не способен сам их придумывать. Гораздо проще и эффективнее, когда человек владеет теорией и в то же время хотя бы немного подкован технически.
Я выделил бы две категории проектов, с которыми имеет дело тестировщик: проекты в разработке и проекты в поддержке. Работать на проектах первого типа гораздо интересней и динамичней. Тестировать продукт, который появляется у тебя на глазах, — это настоящий «раш». Лично мне больше всего нравится работать с системами управления предприятиями. Это очень сложные задачи, где много бизнес-логики и технической составляющей.
Тестировщик и код
Среднестатистическому тестировщику язык программирования в принципе не нужен. Можно успешно заниматься функциональным тестированием 10 лет и не написать ни одного скрипта. Язык обязательно нужен для автоматизированного тестирования. Автоматизатор — разработчик, который пишет код для тестирования другого кода.
Но если техническая часть нравится, и к ней есть склонности, то никогда не поздно засесть за программирование. Знание кода позволит автоматизировать некоторые процессы в работе даже функционального тестировщика, и его тесты станут лучше и эффективнее.
Где и как учиться на тестировщика
Расскажу на примере своей работы. Я обучаю тестировщиков в IT-Academy. Наш курс длится 9 недель или 27 занятий. За это вермя можно получить базовую подготовку, достаточную для начала работы в качестве тестировщика. Но это очень интенсивный курс.
Я всегда говорю, что правильный подход во время обучения: не спать, мало есть, ничем больше не заниматься и 9 недель штудировать материалы.
Для освоения азов профессии не нужно знать языки программирования, но новичок должен освоить обширную теорию. Далеко не всем это легко даётся. По большому счёту, за пару месяцев студенту надо пройти ужатый курс университетского обучения.
В тестировщики приходят люди из самых разных профессий, и кроме теоретических знаний в обязательный скилл-сет должны входить усидчивость и внимательность к деталям.
В моём понимании профессиональный портрет крепкого функционального тестировщика достаточно прост. Это человек с опытом в профессии от одного года, который хорошо знает теорию тестирования и умеет работать с основными техническими документами.
На рынке можно найти множество курсов: очных и дистанционных, платных и бесплатных.
Во многих крупных ИТ-компаниях есть внутренние (как правило, бесплатные) курсы по тестированию. Однозначно нужно пробовать попасть туда, особенно если хотите работать в компании-организаторе таких курсов. Минус подобного околокорпоративного обучения — оно часто бывает узконаправленным и не совсем подходят по своему содержанию средним требованиям рынка. Платные курсы, коих великое множество, чаще дают более широкую программу подготовки.
Книги и ссылки
- Software Testing Udacity — попробовать бесплатный онлайн-курс.
- Testing Challenges — «пощупать руками» интересные задачки для тестирования .
Много ссылок на обучающие ресурсы представлены в списке на сайте IT-Academy.
Карьера и рост
Тестирование наряду с бизнес-анализом или техническим писательством — действительно одна из наименее сложных точек входа в ИТ (хотя этот путь тоже не из лёгких).
Тестировщику необязательно обладать глубокими техническим навыками, знать языки программирования или даже иметь математический склад ума. Хотя ситуация меняется и требования к кандидатам растут. Говорят, 10-15 лет назад ИТ-компании брали в тестировщики чуть ли не людей с улицы. Лет 7 назад (когда я сам приходил в профессию) новичку уже надо было крепко владеть теорией. Сегодня на собеседованиях чаще проверяют базовые технические навыки: работу с базами данных и сетями, администрирование.
Если говорить о развитии внутри профессии, то для функционального тестировщика самая близкая специализация — это автоматизатор. Когда-то я и сам прошёл такой путь. Потом некоторые автоматизаторы уходят в «чистые» разработчики или становятся супер-крутыми технарями-тестерами (есть даже такое понятие, как тест-архитектор). Порой функциональные тестировщики после дополнительного обучения переходят в параллельную ветку безопасности или нагрузочного тестирования.
Многие тестировщики, которые меньше склонны к технической работе, становятся бизнес-аналитиками. Ещё один «нетехнический» путь — это менеджерские позиции: управление проектами или командой.
За последние месяцы ситуация на рынке труда радикально изменилась из-за эпидемии коронавируса. Ещё два месяца назад спрос на начинающих тестировщиков был большой, и он сохранялся на протяжении нескольких лет.
Конечно, в условиях кризиса позиция тестировщика становится уязвимой. Без разработчика невозможно написать ПО, а без тестировщика худо-бедно можно. Мне кажется, в этой ситуации лучше всего защищены «миксы» — те самые универсалы, о которых я говорил выше. Они способны быстро перестраиваться с одних задач на другие. Если проекту станут не нужны мануальщики, то «микс» всегда может переключиться на автоматизацию процессов — и наоборот.
Кто ты, QA-инженер или тестировщик? / Блог компании Dodo Engineering / Хабр
QA и QC — как камыш и рогоз. Конечно, есть ботаники, которые их различают, но большинство людей всё-таки путают. Иногда самим QA и QC легче согласиться с представлением обывателей, чем пускаться в долгие объяснения, в чём же всё-таки разница. Предлагаю сделать усилие над собой, разобраться с терминами и понятиями, увидеть отличия и больше никогда их не путать.
Больше трёх лет я занимаюсь обеспечением качества продуктов. И всё это время наблюдаю за эволюцией процессов тестирования в компании.
От момента зарождения, когда в команду нанимали первых двух человек. Полгода они тестировали продукт руками, а после становились бизнес-аналитиками, а за ними уже стояли следующие два человека.
До текущих процессов с блэкджеком Scrum-Less и автотестами на Selenium.
Накопленный опыт и черты характера типичные для моей профессии привели к размышлениям о том, кто такие тестировщики, QA и QC. Разные это суть сущности или пересекающиеся? В статьях и конференциях я часто сталкиваюсь с какой-то путаницей, мне это не нравится. Поэтому я решил поделиться своими мыслями на этот счёт. Осторожно, данная статья не является истиной в первой инстанции. Данная статья — мысли вслух и желание найти единомышленников.
QA, QC и тестировщики: три большие разницы?
Начнём наши поиски и копания с обращения к Международному стандарту системы менеджмента качества ISO 9000:2015. В каждой статье, в каждом видео на тему отличия этих понятий есть ссылка на этот документ, моя статья не исключение.
В пункте 3.2 стандарта раскрываются два определения:
- Обеспечение качества (3.2.10) — часть управления качеством, направленная на обеспечение уверенности в том, что требования к качеству будут выполнены.
ОригиналQuality assurance (3.2.10) — part of quality management focused on providing confidence that quality requirements will be fulfilled.
- Контроль качества (3.2.11) — часть управления качеством, ориентированная на выполнение требований к качеству.
ОригиналQuality control (3.2.11) — part of quality management focused on fulfilling quality requirements.
Из этих определений следует, что мы либо обеспечиваем качественный продукт, либо проверяем продукт на соответствие качеству.
Отмечу, что в стандарте ISO 9000:2015 вообще нет понятия tester как такового. Я искал.
Так каким же образом взаимосвязаны понятия Quality assurance, Quality control и Тестирование между собой?
Часто можно встретить такого рода иллюстрации со слоёной структурой качества, где тестирование — часть контроля качества, контроль качества — часть обеспечения качества.
Но лично мне кажется, что раз в стандарте нет понятия tester или testing, а QC — это и есть разного рода тестирование, то и иллюстрации должны быть такими:
Однако стандарт есть стандарт, а у нас тут реальная жизнь. И в реальной жизни IT-индустрии встречаются только два названия нашей профессии:
- QA-инженер.
- Тестировщик Программного обеспечения (ПО).
Причём очень часто эти понятия взаимозаменяются и путаются. Неразбериха начинается ещё на этапе описания вакансий.
Ищу Тестировщика ПО (QA-инженера)
Я бы не писал эту статью, если бы в индустрии не смешивали эти роли и не называли тестировщиков QA-инженерами и наоборот. По моим наблюдениям, в России не разделяют две профессии. Всех для простоты (а может по незнанию) называют тестировщиками. И ладно бы таким грешили только работодатели, но путаницу поддерживают и сами тестировщики. Например, на Хабре можно встретить статьи, где авторы на протяжении всего текста называют одних и тех же людей тестировщиками, QC-инженерами, QA-специалистами, инженерами по тестированию и тестерами.
Масла в огонь подливают HR-менеджеры: часто для увеличения охвата аудитории они пишут в названии вакансии «Тестировщик ПО (QA инженер)». Шапкой вакансии дело не заканчивается, винегрет продолжается и в самом описании.
Давайте обратимся к вакансиям QA-инженеров:
Все задачи связаны с тестированием и нацелены на поиск багов, хотя компания ищет «QA-инженера».
Или ещё один красочный пример:
И ещё:
И на сладкое:
По факту многие работодатели ищут тестировщика ПО (если ориентироваться по описанию обязанностей), но в названии обозначают, что находятся в поисках QA-инженера.
Если вы помните, в ISO 9000:2015 есть QA и QC. Что будет, если выполнить запрос на hh.ru по ключевому слову QC? А ничего не будет. Вы не увидите вакансий ни QA, ни тестировщика. По такому запросу появятся вакансии, связанные с производством и контролем качества выпускаемой продукции.
Получается, что в IT-индустрии нет профессий QC, их заменили на тестировщиков ПО, а в других сферах деятельности нет QA-специалистов, зато есть QC. В описании вакансий QA-инженеров не указывают обязанности по улучшению качества продуктов и недопущению багов, наверное, считают это само собой разумеющимся.
Что такое обеспечение качества
Прежде чем продолжить, давайте замутим небольшой интерактив. Перейдите по ссылке и посмотрите на сайт конференции QualityConf. Побродите пару минут по темам выступлений и ответьте для себя на несколько вопросов:
- Для кого эта конференция?
- С чем она у вас ассоциируется?
Конференция QualityConf целиком и полностью посвящена качеству, а не тестированию. Однако при подготовке очередной конференции организаторы провели исследование и задали вопрос своим посетителям: «С чем у вас ассоциируется конференция?».
Как вы все уже, наверное, догадались, главные ассоциации были исключительно с тестированием.
Получается, что сегодня, говоря слово «качество», многие слышат «тестирование», и очень часто это функциональное тестирование, хотя понятие качество гораздо шире.
Качество — это определение потребителя, а не определение инженера, не определение маркетинга и не общее определение менеджмента. Оно основано на фактическом опыте клиента в отношении продукта или услуги, измеряется в соответствии с его требованиями — заявленными или неустановленными, осознанными или просто ощущаемыми, технически действующими или полностью субъективными. Качество всегда представляет собой движущуюся цель на конкурентном рынке.
Оригинал
Quality is a customer determination, not an engineer’s determination, not a marketing determination, nor a general management determination. It is based on the customer’s actual experience with the product or service, measured against his or her requirements — stated or unstated, conscious or merely sensed, technically operational or entirely subjective — and always representing a moving target in a competitive market (Armand Feigenbaum «Total quality control»).
Тестирование — один из способов обеспечить качество продукта. Кроме этого повысить качество продукта можно вводя стандарты кодирования, внедряя новые инженерные практики, дизайн ревью и так далее. Способов обеспечить качество много, но на разных этапах зрелости команд и процессов в компании эти способы дадут разный эффект, об этом необходимо помнить. Но это уже совсем другая история.
QA ≠ QC: как их различить
QC: кто эти люди, какие у них задачи, какие у них ограничения
Кто эти люди? Люди, которых называют тестировщиками, тождественны контролю качества QC. По логике вещей они на последнем этапе разработки проверяют качество продукта (любым видом и типом тестирования — ручным, автоматизированным, нагрузочным, тестированием безопасности и т.д.).
Какая у них задача? Их задача — провести валидацию продукта и предоставить информацию бизнесу и разработчикам о соответствии продукта заявленным требованиям.
Какие у них ограничения? Какие могут быть недостатки, если у вас все сотрудники проверяют продукт на соответствие:
- До взятия фичи в проверку такие сотрудники не влияют на процесс обеспечения качества и разработки, хотя их участие могло бы предотвратить некоторое количество багов и тем самым сократить затраты на тестирование.
- Зачастую такие сотрудники не могут давать рекомендации, как сделать продукт лучше. Потому что поезд ушёл и уже поздно. Им остаётся лишь сверять соответствие продукта требованиям. FYI: хотя на самом деле тестировщикам есть что сказать по поводу улучшений, которые необходимо сделать.
- Эти ребята чаще всего не видят полной картины процесса, поэтому искренне не понимают, почему разработчики дают им код, в котором приложение крашится при попытке запуститься. И, согласно п.1, ничего не могут с этим сделать. Даже если хотят.
- Они не могут взять на себя полную ответственность за качество продукта.
- Очень часто между тестировщиками и разработчиками возникают конфликты. Так бывает, когда разработчики считают свой код самым лучшим и работающим, а в тестировщиках видят лишь попытки его сломать и показать, что код не работает. Такое положение дел порождает всем известные мемы «Это не баг, а фича».
QA: кто эти люди, какие у них задачи, какие у них ограничения
Кто эти люди? Инженеры по обеспечению качества (QA) — это люди, которые помогают командам разработки выпускать качественный продукт, как можно быстрее за как можно меньшие деньги. Ведь все мы знаем, что чем раньше найден баг, тем дешевле его пофиксить. Лучше всего фиксить баги ещё на уровне идеи.
QA-инженеры участвуют на самых ранних этапах создания продукта/фичи. Если бы они могли залезать в головы к PO, чтобы сказать им о недостаточности приемочных критериев или сценариев использования фичи, — они бы делали это.
Какая у них задача? Задача QA-инженера — не допустить несоответствия продукта предъявляемым требованиям. QA-инженер замеряет качество продукта, знает его актуальное состояние и что нужно сделать, чтобы его поднять не только на этапе тестирования, но и на этапе разработки, дизайна или составления требований.
Какие у них ограничения? Сложно оценить качество работы QA-инженера, потому что если он хорошо выполняет свою работу, то до этапа тестирования будет доходить минимальное количество багов не влияющих на функциональность и запуск продукта в прод.
В отличие от QA, работу QC оценить можно, особенно если отталкиваться от самого простого и оценивать эффективность по количеству багов — сколько багов нашёл и сколько багов пропустил на прод.
Как дальше жить?
Большой штат тестировщиков не сможет существенно улучшить качество продукта. Но сможет улучшить саму проверку качества. Если же вы, коллеги-тестировщики, хотите поднимать именно качество на новый уровень, задумайтесь о переходе в QA-инженеры.
Только не ждите, когда вас позовут на встречу, где обсуждают фичи с разработчиками или дизайнерами, придите на неё сами. Высказывайте своё мнение касательно любого аспекта качества продукта. Не позволяйте сложившимся правилам, должностным инструкциям и прочей фигне мешать вам делать продукт ещё более качественным, чем сейчас.
Я знаю, что большинству из вас не всё равно на то, что вы тестируете. И вы искренне хотите поставлять хороший продукт, которым приятно будет пользоваться.
Как стать тестировщиком или каких знаний мы ждём от джуниора
Пара вводных слов
Всем доброго времени суток, меня зовут Туманов Дима. Сейчас я работаю в компании Rambler&Co и отвечаю за тестирование на проектах Афиши. В рамках данной статьи я развею несколько мифов об IT и тестировании в частности. Кроме того, приведу примеры из жизни как “не зная ничего” стать Junior QA Engineer в крупной компании.
Начало пути
Проработав почти два года в одной “мирной” госкорпорации в должности “ненастоящего инженера”, я осознал, что развитие остановилось. Я мог сидеть на одном месте и почти ничего не делать. В конечном итоге мои знания бы совсем отстали от реальной действительности и я бы стал невостребованным на рынке. В этот момент я принял решение о смене места и сути своей работы.
Вопрос №1 — “Какую область для работы выбрать”
Мой выбор основывался на нескольких фактах. Во-первых я хотел работать в быстро развивающейся отрасли. В этом я видел и вижу сейчас возможность постоянно расти в профессии, развивая себя в различных направлениях. Во-вторых я хотел уйти от бюрократии, жёстких регламентов и обязательного ношения костюмов жарким летом. Ну и последнее, но не по значению, я хотел делать действительно важное дело, ощущать близость конечного пользователя, понимать, что моя работа действительно нужна. Все три этих пункта я смог увидеть в IT-отрасли.
Вопрос №2 — “Какую профессию выбрать”
Для меня важным было некое совмещение гуманитарных и технических наук, то есть коммуникаций и инженерии. С одной стороны я не хотел быть только техническим специалистом и например писать лучший код на Java. С другой я хотел понимать как всё устроено изнутри. По этим причинам мой выбор пал на тестирование. Дополнительно к смежности профессии, описанной выше, в тестирование довольно просто попасть. Порог входа действительно небольшой.
Вопрос №3 — “Какую компанию выбрать”
По сути все компании можно классифицировать несколькими способами. Во-первых по отношению заказчик-разработчик. Есть принципиальная разница между компаниями аутсорсерами и продуктовыми компаниями. Для первых самым важным является продажа продукта. Да, есть имя компании, отзывы клиентов, но так или иначе заработок идёт от прямых продаж. Для вторых важным является иметь качественный и популярный продукт. На таком продукте можно разместить дорогую рекламу и заработать много денег. Поэтому с точки зрения тестирования сильная команда будет сформирована именно в продуктовой компании. Во-вторых компании стоит разделять на русские и импортные. На текущий момент тестирование остаётся слабо развитым направлением в России. Это даёт свои плюсы и оставляет возможность занять своё место под солнцем без сильных проблем. Но, с другой стороны, сужает выбор достойных мест для работы. Благо в крупных интернет компаниях рунета уже “пройден этап варварства и созданы первые государства”. Для меня было важно работать именно в русской компании. Это что-то вроде “странного” патриотизма, если хотите. Исходя из всего этого мой выбор пал на крупные продуктовые интернет компании России. Таких кстати совсем немного и вы легко можете найти их рейтинг в Forbes (2014, 2015, 2016).
Вопрос №4 — “Как решить проблему отсутствия опыта”
Парадокс подавляющего числа компаний заключается в необходимости опыта даже для начальных предложений. Ответ на вопрос как они вообще себе такое представляют я не нашёл до сих пор. Благо в неразберихе рождается всё новое и многие построили бизнесы на этой истории. Сеть сейчас кишит различными обучениями с практикой, среди которых есть действительно стоящие. С остальными знаниями, которые нужно приобрести, вроде без эксцессов, поэтому давайте обо всём по порядку.
Вопрос №5 — “Какие знания нужно получить и как это сделать”
- Погружение в теорию тестирования. В первую очередь нужно научиться говорить на языке IT и тестирования в частности. Для этого необходимо разобраться с тем, что такое обеспечение качества и с основными понятиями из тестирования ПО. Данные материалы можно раскопать почти в любой книге по тестированию, но я ярый противник “технических” талмудов и считаю их медленным источником информации. Намного проще и быстрее это сделать из отдельных статей:
- Изучение Bug Tracking систем. Ключевым навыком инженера по тестированию является поиск, локализация и качественное заведение дефекта. Баг не существует в вакууме, он чётко связан с разделом программы, воспроизводится на списке конфигураций (операционная система и её версия, браузер и его версия), имеет свой приоритет. Более того работу над исправлением дефекта проводят несколько разных специалистов. Для того чтобы сделать процесс управления починки дефекта управляемым используют специальные системы. Здесь есть иллюзия выбора. Есть широко распространённый Redmine. Но если вы нацелены на работу в компании, указанного выше класса, то вам стоит изучать Jira. Для этого рекомендую сделать следующее:
- Поставить себе пробную версию продукта и пройти эти ролики
- Поставить себе и изучить базовые гаджеты: 1, 2, 3
- Изучение Test Management систем. Любой софт — это по сути набор возможностей, то есть так или иначе конечное множество. При этом логика работы каждой из них не является идеальной моделью, а значит количество багов в системе всегда бесконечно. Вопрос в том что мы считаем багом, а что нет. Тут на помощь нам приходят требования от заказчика, описывающие то каким должен быть наш продукт. В качестве требований не обязательно должно быть техническое задание на тысячу страниц. Это также может быть прототип или постоянное живое обсуждение, если ваш продукт это просто новая доработка. Для перевода требований в набор проверок существуют методы из теории тестирования, которые вы уже должны были изучить выше. Но тесты, как и дефекты не существуют в вакууме и над одним функционалом может одновременно работать несколько специалистов по тестированию. По аналогии для управления процессом написания и применения тестов используют специальные системы. Лихие 90-е ушли и работа в “эксельках”, “блокнотиках” и “тестлинках” уже не является нормальным явлением. Недавно я проводил аудит по поиску подходящей системы. В основном они либо ничего не делают, либо стоят как космолёт. Золотой серединой является TestRail. Для его изучения нужно сделать следующее:
- Поставить себе пробную версию и пройти эти ролики
- Поднятие технического бэкграунда. Мы занимаемся web и mobile приложениями, поэтому рассуждение пойдёт в этом ключе. Настоящий тестировщик обязан понимать “начинку” того, что он проверяет. Это экономит время команды, так как специалист по тестированию сам может определить истинную причину дефекта и описать её правильно. Да и тестировать то, о чём ты ничего не знаешь как минимум странно. Плюс глубокое понимание улучшает ваши коммуникации с другими техническими специалистами. Для старта хватит этих общих знаний:
- Изучение программирования. Извечный вопрос нужно ли уметь программировать тестировщику имеет очень простой ответ. Нужно. Связано это с тем самым техническим бэкграундом во-первых и с развитием аналитичности вашего мышления во-вторых. На начальном этапе достаточно иметь базовые представления о программировании, в будущем для качественного роста вам потребуется изучить один из популярных языков. Например, Python или Java. На старте стоит изучить следующее:
- Преодоление преграды отсутствия опыта. В IT-отрасли сейчас сильная нехватка кадров, в частности тестировщиков, поэтому часто берут перспективных кандидатов без опыта. Действительно, проще научить с нуля, чем переучивать. Для того, чтобы стать более востребованным по сравнению с другими стоит пройти специализированные курсы по тестированию. На них можно получить структурированные знания и самое главное опыт реального тестирования. Я рекомендую пройти курс “Школа успешных тестировщиков, v 2.0” с этого портала
- Поиск работы. Дальше остаётся только составить резюме, учитывая обновлённые знания и навыки, и научиться грамотно использовать hh
Перспективы развития
Работа занимает треть нашей жизни. Если отбросить сон, то это вообще половина нашего времени. Единственно правильным считаю работать там и делать то, что действительно нравится. Помимо морального удовлетворения есть и материальные блага. Уровень зарплат по официальным источникам даже на старте превышает среднюю температуру по больнице. Наличие ДМС, скидки на фитнес или наличие зала внутри компании, бесплатные билеты на различные мероприятия и прочие бонусы конечно же присутствуют. К тому же работа оценивается по количеству сделанной работы, а никак не по проведённому на ней времени. В IT всегда гибкий график и “опоздание на 15 минут” никак не будет наказываться. Более того, на это даже никто не обратит внимание, потому что это действительно нормально. Роль тестировщика — это не окончание вашего движения, это лишь точка входа. После пары лет хорошей практики в тестировании вы сможете выбрать любой путь развития в компании.
Почему я уверен в вашем успехе
Как когда-то сказал Стив Джобс: “Нельзя соединить точки жизненного пути, смотря вперёд. Их можно соединить, только оглядываясь в прошлое”. Именно этот принцип и даёт мне уверенность в том, что стать тестировщиком и начать получать удовлетворение от работы может абсолютно каждый. Есть и другие примеры за последние несколько лет, которые только подтверждают доступность данной профессии. У меня был некий Challenge Accepted. В какой-то момент ко мне почти одновременно обратилось два человека, которых я очень хорошо знал. Один из них на тот момент работал в правоохранительных органах, другой был профессиональный военным. Схожесть ситуации была на лицо. Они большие молодцы и с большой настойчивостью проходили примерно описанный выше план. Такое самообучение и поиск самой работы у них заняло порядка трёх-четырёх месяцев. Сейчас они работают тестировщиками, имеют перспективы для развития, гибкий график и думаю много чего в их жизнях ещё изменилось.
Post Scriptum
Ещё раз подчеркну. Войти в данную профессию не сложно. Это сможет каждый. Дальнейшее развитие в IT зависит уже только от вас.
тестирование / Блог компании Хабр Карьера / Хабр
QA Start · Академия IT
Семь уроков этого курса познакомят вас с методологиями разработки и их влиянием на качество, с фреймворками гибкой разработки, видами, техниками и уровнями тестирования, с тестовой документацией, а также с работой с дефектами ПО.
Пройти курс →
Интенсив по тестированию ПО · GeekBrains
Сегодня ни один проект не обходится без тестирования — будь это сервис, компьютерная игра или интернет-магазин. На этом курсе вас научат различать тестовую документацию, тестировать требования и составлять тест-кейсы, составлять отчеты о дефектах и пользоваться баг-трекинговыми системами.
Поступить →
Видеокурс по тестированию ПО · Академия IT
Один из стартовых курсов, после прохождения которого вы будете различать типы тестирования ПО, самостоятельно определять и ставить цели тестирования и узнаете, что такое баги и как их репортить. А еще вы попрактикуетесь в создании тест-кейсов и в тестировании веб-приложений.
Пройти курс →
Верификация программного обеспечения · ИНТУИТ
Программа курса посвящена современным технологиям верификации ПО, применяемыми при промышленной разработке сложных и отказоустойчивых систем. Она охватывает такие темы, как построение тестового окружения, планирование системы тестов, анализ и обнаружение багов, интеграционное и системное тестирование и общие аспекты тестирования интерфейсов.
Пройти обучение →
Профессия «Инженер по тестированию» · Яндекс.Практикум
На этом курсе вы освоите тест-дизайн и овладеете инструментами Postman, Charles, Яндекс.Трекер, а также познакомитесь с Javascript и Puppeteer. Обратите внимание, Яндекс.Практикум предлагает бесплатно пройти только вводную часть курса, состоящую из 10 часов теории и 84 заданий. Это поможет определиться, хотите ли вы двигаться дальше в этом направлении.
Пройти вводную часть →
Автоматизация тестирования с помощью Selenium и Python · Stepik
Это базовый курс для начинающих тестировщиков, на котором вас научат писать автоматизированные UI-тесты на Python с помощью библиотеки Selenium. А еще в программе — популярные фреймворки и лучшие практики написания автотестов.
Пройти курс →
Software Debugging · Udacity
На этом курсе вы узнаете, как «дебажить» программы и как автоматизировать этот не всегда веселый и захватывающий процесс. А также вас научат создавать кое-какие инструменты автоматической отладки на Python. Курс на английском.
Поступить →
Основы тестирования · Академия IT
Еще один базовый курс от Академии, на котором вам расскажут о QA, как таковом, и расскажут о тестовых артефактах, жизненном цикле тестирования, типах приложений, клиент-серверной архитектуре и других полезных вещах.
Пройти обучение →
Software Testing · Udacity
В разработке программного обеспечения разрушение может быть так же ценно, как и созидание. На курсе вас научат ломать любое ПО разными способами, чтобы отыскать в нем баги и уязвимости.
Записаться →
Основы тестирования программного обеспечения · ИНТУИТ
За 14 с небольшим часов этого курса вы не только получите хорошую теоретическую базу знаний о тестировании ПО, но и потренируетесь в нем, выполняя практические задания. В конце курса предусмотрен экзамен по пройденному материалу, так что готовьте зачетки.
Поступить на курс →
Software Testing QA · Академия IT
Курс, на котором вас познакомят не столько с QA, сколько с тем, как начать свой путь в этой специальности. Уроки посвящены прохождению собеседований, лайфхакам и советам для новичков, а также разбору структуры QA команд в IT-компаниях.
Пройти обучение →
Курсы тестировщиков онлайн · Академия IT
Базовый, но от этого не менее полезный курс, который вам пригодится, чтобы получить или освежить знания о тестирование ПО, контроле качества и баг-трекинге.
Записаться →
Тестирование ПО: базовый уровень · Stepik
Курс ориентирован на начинающих тестировщиков и тех, кто хочет потренироваться перед сдачей сертификационного экзамена. Он основан на официальной программе обучения ISTQB, а все 111 тестов составлены из заданий реальных экзаменов ISTQB Foundation Level.
Пройти обучение →
Unit-тестирование С# · Академия IT
Более узкоспециальный курс для тех, кто хочет научиться именно юнит-тестированию. За 12 уроков вам расскажут о том, что это вообще такое, какие есть типы юнит-тестирования и о лучших практиках его использования. Ну и, конечно, об инструментах, с которыми вам придется иметь дело, занимаясь этим видом тестирования.
Записаться на курс →
Важность | Мероприятия |
---|---|
Взаимодействие с компьютерами — Использование компьютеров и компьютерных систем (включая оборудование и программное обеспечение) для программирования, написания программного обеспечения, настройки функций, ввода данных или обработки информации. | |
Анализ данных или информации — определение основных принципов, причин или фактов информации путем разбивки информации или данных на отдельные части. | |
Получение информации — наблюдение, получение и иным образом получение информации из всех соответствующих источников. | |
Принятие решений и решение проблем — анализ информации и оценка результатов для выбора наилучшего решения и решения проблем. | |
Обновление и использование соответствующих знаний — техническая поддержка и применение новых знаний в вашей работе. | |
Общение с руководителями, коллегами или подчиненными — Предоставление информации руководителям, коллегам и подчиненным по телефону, в письменной форме, по электронной почте или лично. | |
Обработка информации — компиляция, кодирование, категоризация, вычисление, табулирование, аудит или проверка информации или данных. | |
Идентификация объектов, действий и событий — идентификация информации путем категоризации, оценки, распознавания различий или сходств и обнаружения изменений в обстоятельствах или событиях. | |
Документирование / запись информации — ввод, расшифровка, запись, хранение или поддержание информации в письменной или электронной / магнитной форме. | |
Мыслить творчески — Разработка, проектирование или создание новых приложений, идей, отношений, систем или продуктов, включая творческий вклад. | |
Установление и поддержание межличностных отношений — Развитие конструктивных и основанных на сотрудничестве рабочих отношений с другими и поддержание их с течением времени. | |
Организация, планирование и определение приоритетов работы — разработка конкретных целей и планов для определения приоритетов, организации и выполнения вашей работы. | |
Оценка информации для определения соответствия стандартам — Использование соответствующей информации и индивидуальных суждений для определения того, соответствуют ли события или процессы законам, постановлениям или стандартам. | |
Интерпретация значения информации для других — Перевод или объяснение того, что означает информация и как ее можно использовать. | |
Развитие и создание команд — поощрение и укрепление взаимного доверия, уважения и сотрудничества между членами команды. | |
Мониторинг процессов, материалов или окружающей среды — мониторинг и анализ информации из материалов, событий или окружающей среды для обнаружения или оценки проблем. | |
Разработка целей и стратегий — Установление долгосрочных целей и определение стратегий и действий для их достижения. | |
Планирование работы и действий — планирование событий, программ и мероприятий, а также работы других. | |
Оценка качества вещей, услуг или людей — оценка ценности, важности или качества вещей или людей. | |
Координация работы и деятельности других — привлечение членов группы к совместной работе для выполнения задач. | |
Оценка количественных характеристик продуктов, событий или информации — оценка размеров, расстояний и количества; или определение времени, затрат, ресурсов или материалов, необходимых для выполнения работы. | |
Обучение и обучение других — Определение образовательных потребностей других, разработка формальных образовательных или учебных программ или классов, а также обучение или инструктаж других. | |
Коучинг и развитие других — Определение потребностей в развитии других и обучение, наставничество или иная помощь другим в улучшении их знаний или навыков. | |
Консультации и рекомендации другим — предоставление руководящих указаний и рекомендаций руководству или другим группам по техническим, системным или технологическим вопросам. | |
Направление, направление и мотивация подчиненных — обеспечение руководства и указаний подчиненным, включая установление стандартов работы и мониторинг эффективности. | |
Разрешение конфликтов и ведение переговоров с другими — рассмотрение жалоб, урегулирование споров и разрешение жалоб и конфликтов или иным образом ведение переговоров с другими. | |
Проверка оборудования, конструкций или материалов — Проверка оборудования, конструкций или материалов для выявления причин ошибок или других проблем или дефектов. |
.
8 лучших сертификатов для тестирования программного обеспечения на основе вашего уровня опыта
Сертификаты для специалистов по тестированию QA — давайте найдем, что вам подходит
В последней теме, которую мы обсуждали, стоит ли получать сертификат QA тестирования программного обеспечения. Сертификация очень важна, если мы хотим целостного роста в нашей профессиональной жизни.
Сертификация не только дополняет ваш профиль, но и действует как катализатор для повышения ваших знаний и меняет ваш образ мышления «по-другому».При правильной реализации помогает лучше организовать работу, помогает мыслить стратегически и иметь долгосрочное видение.
Обучение нельзя прекращать.
Держа эту мысль в уме, здесь я пытаюсь записать сертификаты, доступные для профессионалов QA с самого начала карьеры до более высокого опыта. Но мы должны иметь в виду, что сертификация, которую вы выполняете, должна соответствовать вашему уровню опыта.
Обратите внимание, что это всего лишь рекомендации.Выбор сертификации / курса основан на личных устремлениях.
Уровень 1 — Новичок (опыт 0-5 лет)
1) Институт : QAI (Институт обеспечения качества — Флорида — США)
Сертификация : CAST — Сертифицированный партнер по тестированию программного обеспечения
Право на участие : Одно из следующих:
- Трехлетнее или четырехлетнее образование в аккредитованном колледже
- Двухгодичное обучение в колледже с 1-летним опытом.
- 3-летний опыт работы в IT.
Сбор : 100 долларов
Как подать заявку : Чтобы подать заявку на сертификацию CAST, кандидаты должны сначала войти в свою учетную запись на портале клиентов. Если вы новичок на портале, вам необходимо создать его, щелкнув ссылку «Зарегистрироваться сейчас», а затем вкладку «Зарегистрироваться как новый пользователь».
Ссылка на регистрацию : Зарегистрируйтесь здесь
Как подготовить : После регистрации и оплаты взноса вы получите книгу «Свод знаний по тестированию программного обеспечения (STBOK) для CAST (367 страниц)».Этого должно быть достаточно для подготовки к экзамену.
Формат экзамена : 100 вопросов с несколькими вариантами ответов за 75 минут
Pass% : 70
2) Институт : ISTQB (Международная квалификационная комиссия по тестированию программного обеспечения)
Сертификация: ISTQB — базовый уровень
Право на участие: Нет
Взнос: 4500 рупий — Индия (приблизительно), 250 долларов США — США
Как подать заявку: Свяжитесь с вашим национальным или региональным советом для получения информации о Поставщики экзаменов, даты экзаменов, применимые сборы и информация о бронировании.
Если на экзамен подано более 10 кандидатов от одной компании, то экзамен может быть проведен ITB в компании.
Ссылка для регистрации: Зарегистрируйтесь здесь
Как подготовить : Щелкните здесь, чтобы получить учебные материалы.
Рекомендуем : У нас есть 100% уверенность в успешной сдаче учебного пособия на экзамене ISTQB Foundation. Он содержит более 800 практических вопросов, более 200 вопросов премиум-класса и множество электронных книг, основанных на программе экзамена ISTQB.Если вы хотите получить это учебное пособие, посетите эту страницу. Это учебное пособие премиум-класса.
Формат экзамена: 40 вопросов с несколькими вариантами ответов за 60 минут
Успешно%: 65%
Уровень 2 — средний (5-8 лет опыта)
# 1) Институт : QAI (Качество Assurance Institute — Флорида — США)
Сертификация: CSTE — (Сертифицированный инженер по тестированию программного обеспечения)
Право на участие: Одно из следующих:
- 4-летняя степень аккредитованного колледжа- учреждение уровня и 2 года опыта в области информационных услуг
- 3-летняя степень аккредитованного учреждения уровня колледжа и 3 года опыта работы в области информационных услуг
- 2-летняя степень аккредитованного учреждения уровня колледжа и 4 лет опыта в сфере информационных услуг
- Шесть лет опыта в сфере информационных услуг
И
Работаем или работали в любой раз в течение предшествующих 18 месяцев в области, охватываемой указанием сертификации.
Взнос: 350 долларов — Включает плату и книгу в формате pdf; 420 долларов США — включает плату, книгу и компакт-диск.
Как подать заявку: Чтобы подать заявку на сертификацию CSTE, кандидаты должны сначала войти в свою учетную запись на портале клиентов. Если вы новичок на портале, вам необходимо создать его, щелкнув ссылку «Зарегистрироваться сейчас», а затем вкладку «Зарегистрироваться как новый пользователь».
Ссылка для регистрации: Зарегистрируйтесь здесь
Как подготовиться : Книга CBOK (Common Body of Knowledge) достаточна для подготовки к экзамену.Внимательно прочтите книгу и пройдите несколько пробных тестов, доступных в Интернете, чтобы подготовиться к экзамену.
Формат экзамена: Экзамен разделен на 2 части:
100 вопросов с несколькими вариантами ответов за 75 минут; 12 вопросов типа эссе за 75 минут.
Pass%: 70%, что является средним для обеих частей.
# 2) Институт : HP
Сертификация: HP HP0-M102 для версии UFT 12.0
Взнос: около 350 долларов США.
Как подать заявку: Вам необходимо иметь HP Learner ID.
Создайте учетную запись в PearsonVUE. После отправки формы вам необходимо запланировать экзамен с помощью ссылки «Запланировать контролируемый экзамен». Вы найдете подробную информацию о стоимости и языке экзамена, и вам нужно будет выбрать дату, время и до 3 центров для проведения экзамена.
Ссылка для регистрации: Отметьте эту ссылку для получения Id учащегося; и эта ссылка для создания учетной записи в PearsonVUE.
Как подготовиться : Самостоятельное обучение, практика и сдача пробного экзамена.
Формат экзамена: Всего 69 вопросов с множественным выбором, перетаскиванием, наведением и щелчком
Процент успешно пройден: 75%
Уровень № 3 — Продвинутый уровень (8–11 лет опыта) — Если вы претендуете на роль архитектора тестирования
Институт : ISTQB (Международная квалификационная комиссия по тестированию программного обеспечения)
Сертификация: ISTQB — Продвинутый уровень — Аналитик тестирования , ISTQB — Продвинутый уровень — Технический аналитик
Право на участие: сертификация / оценочная карточка Foundation.И
Любой из нижеперечисленных:
- Для соискателей степени в области информатики или смежных областях вам потребуется 24 месяца опыта тестирования, если вы хотите пройти 2 подмодуля, и 36 месяцев опыта обязательно, если вы хотите все три подмодуля.
- Для получения степени не бакалавра компьютерных наук, опыт работы 60 месяцев
Взнос: Индия — прибл. 4500 рупий. для каждой вспомогательной статьи; США — 250 долларов за каждый дополнительный документ.
Как подать заявку: Вам необходимо найти поставщика экзаменов и зарегистрироваться на сайте ISTQB для продвинутого модуля.Набор такой же, как и на базовый уровень.
- Щелкните здесь, чтобы загрузить программу для Test Analyst
- Щелкните здесь, чтобы загрузить программу для Technical Test Analyst
Ссылка для регистрации: Для регистрации в индийском совете директоров здесь или перейдите по этой ссылке.
Проверьте эти ссылки для доски объявлений США и Великобритании.
Как подготовиться : Учебный материал + самообучение и знания, полученные в результате опыта, будут объединены для подготовки к экзамену
Формат экзамена: Всего 65 вопросов с несколькими вариантами ответов за 180 минут.Для аналитика технических тестов — всего 45 вопросов с несколькими вариантами ответов за 120 минут.
Pass%: 75%
Уровень № 4 — Продвинутый уровень (8-11 лет опыта) — Если вы стремитесь к должности менеджера по тестированию
Институт : ISTQB (Международная квалификационная комиссия по тестированию программного обеспечения)
Сертификация: ISTQB — Продвинутый уровень — Менеджер по тестированию
Право на участие: Сертификация / оценочная карта уровня Foundation.И
Любой из нижеперечисленных:
- Для соискателей степени в области информатики или смежных областях вам потребуется 24 месяца опыта тестирования, если вы хотите пройти 2 подмодуля, и 36 месяцев опыта обязательно, если вы хотите все три подмодуля.
- Для получения степени не бакалавра компьютерных наук, опыт работы 60 месяцев
Взнос: Индия — прибл. 4500 рупий. для каждой вспомогательной статьи; США — 250 долларов за каждый дополнительный документ.
Как подать заявку: Вам необходимо найти поставщика экзаменов и зарегистрироваться на сайте ISTQB для продвинутого модуля.Набор такой же, как и на базовый уровень.
Как подготовиться : Учебный материал + самообучение и знания, полученные в результате опыта, будут объединены для подготовки к экзамену
Щелкните здесь, чтобы загрузить материал.
Ссылка для регистрации: Для индийской доски или пройдите по этой ссылке.
Для платы США и платы Великобритании.
Формат экзамена: Всего 65 вопросов с несколькими вариантами ответов за 180 минут
Успешно%: 75%
Уровень 5 — (Экспертный уровень 11 + годы) Если вы хотите стать менеджером по доставке — Руководители QA / OA вроде роли
Институт : ISTQB (Международная квалификационная комиссия по тестированию программного обеспечения)
Сертификация: ISTQB — Экспертный уровень — Менеджер по тестированию
Разделен на 3 подмодуля:
- Стратегическое управление
- Операционное тестирование менеджмент
- Управление командой тестирования
ISTQB — Экспертный уровень — Улучшение процесса тестирования
Разделен на 2 подмодуля
- Оценка процесса тестирования
- Внедрение улучшения процесса тестирования.
Право на участие: Сертификация / оценочная карточка Foundation.
- Продвинутый сертификат в зависимости от желаемого экспертного модуля
- Минимум 5 лет опыта тестирования.
- Минимум 2 года опыта работы на выбранном уровне эксперта
Взнос : 375 долларов США за каждый экзамен
Как подать заявку: Вам необходимо найти поставщика экзаменов и зарегистрироваться на сайте ISTQB для продвинутых модуль.Набор такой же, как и на базовый уровень.
Ссылка для регистрации: Для индийской доски или пройдите по этой ссылке.
Для правления в США зарегистрируйтесь здесь, а для правления в Великобритании здесь.
Как подготовиться : Учебные материалы + самостоятельное изучение, справочные книги и знания, полученные в результате опыта, — все вместе для подготовки к экзамену.
Щелкните здесь, чтобы просмотреть программу.
Формат экзамена:
- 25 вопросов разных типов за 45 минут
- 2 из 3 вопросов типа эссе за 90 минут
Щелкните здесь, чтобы получить более подробную информацию.
Pass%: 75%
Поскольку все мы знаем, что методология Agile широко используется в наши дни и набирает большую популярность, давайте теперь поговорим о некоторых сертификатах Agile для тестировщиков программного обеспечения.
Сертификация для повышения уровня Foundation — Agile Tester
Institute : ISTQB (Международная квалификационная комиссия по тестированию программного обеспечения)
Сертификация: ISTQB Сертификация Agile Tester
Без сомнения, тестировщик, работающий в Agile-команде, будет работать иначе, чем в традиционной команде.Эта сертификация очень полезна для тестировщика, который может эффективно работать в гибкой среде. Эта сертификация является дополнением к сертификации ISTQB Foundation Level.
Кому может быть полезен этот сертификат? :
- Тестировщики, имеющие опыт работы с традиционными SDLC
- Тестировщики начального уровня, заинтересованные в Agile-тестировании
- Опытные разработчики с некоторыми знаниями в области тестирования, которые работают в Agile проектах
- Роли включают тестировщиков, аналитиков тестирования, инженеров по тестированию, консультантов по тестированию , менеджеры по тестированию, тестеры приемки пользователей, разработчики программного обеспечения
Право на участие:
- Требуется сертификация ISTQB Foundation Level
Сбор : 150 долларов США
Как подать заявку: Во-первых, вы необходимо создать учетную запись на сайте регистрации ASTQB.Если у вас уже есть учетная запись, вы можете войти в систему с существующими учетными данными. Есть четыре способа сдать экзамен:
- Через онлайн-экзаменационный центр
- Через курс аккредитованного провайдера обучения
- На месте в вашей компании
- На территории вашего колледжа или университета
доступно по ссылке для регистрации (ниже).
Ссылка для регистрации: Щелкните по этой ссылке, чтобы зарегистрироваться на экзамен.
Как подготовить : чтобы подготовиться к расширению Agile Tester, вы можете просмотреть бесплатные ресурсы на ASTQB, которые включают учебную программу, обзор расширений Agile-тестера, PPT на тему «Резюме: Agile Tester в двух словах», веб-семинар, ISTQB Agile Foundation Вводное видео, образец экзамена, лист ответов и другие типовые вопросы. Если вы хотите, вы также можете посетить двухдневный аккредитованный тренинг для получения Agile-сертификации базового уровня.
Щелкните здесь, чтобы просмотреть программу.
Формат экзамена:
- 40 вопросов с несколькими вариантами ответов, на которые нужно ответить в течение 60 минут
Щелкните здесь, чтобы получить более подробную информацию.
Pass%: 65%
Примечание: В будущем также будут доступны две сертификации модулей Advanced Agile.
Certified Agile Software Test Professional Practitioner Level (CASTP-P)
Institute : IIST (Международный институт тестирования программного обеспечения)
Certification: CASTP — P Certified
Эта сертификация предназначена для помощи профессионалов тестирования в адаптации к культуре гибких проектов.Это поможет вам развить навыки, необходимые для работы в гибкой среде. Эта сертификация улучшит ваши коммуникативные навыки, навыки командной динамики, позволит вам работать в динамичной, поэтапной и итеративной модели проекта.
Кому будет полезна эта сертификация ?:
- Все профессионалы в области тестирования, которые хотят научиться работать над гибкими проектами.
- Руководители тестирования и менеджеры по тестированию, которые работают над управлением тестированием в Agile проектах.После получения этого сертификата они смогут более эффективно управлять усилиями по тестированию.
- Разработчики, которые хотят проводить эффективное тестирование в гибких проектах.
Право на участие:
Перед сдачей сертификационного экзамена CASTP — P необходимо выполнить два предварительных условия:
- Вы должны быть сертифицированным специалистом по тестированию программного обеспечения — младший уровень или эквивалентным.
- Не менее одного года опыта работы в сфере тестирования программного обеспечения.Вам необходимо предоставить письмо, подписанное вашим руководителем, с описанием ваших обязанностей на этой работе.
Требования к формальному образованию:
Вам необходимо пройти трехдневный курс обучения, который будет охватывать следующие области ATBOB:
- Методологии гибкой разработки (CASTP # 1)
- Agile Исследование требований и управление требованиями (CASTP # 2)
- Agile Test Design and Test Execution (CASTP # 3)
Щелкните здесь, чтобы проверить варианты обучения.
Взнос: В размере 885 долларов США на человека (включая обучение и сертификационный экзамен) за онлайн-режим обучения и сертификации.
После сдачи экзаменов взимается дополнительный невозвращаемый выпускной взнос в размере 50 долларов США.
Взнос в размере 100 долларов за повторную сдачу экзаменов.
Как подать заявку: Вам необходимо зарегистрироваться для участия в учебных модулях. После регистрации вы получите коды доступа для всех трех модулей и связанных с ними экзаменов.
Подробные инструкции по подаче заявки на экзамен доступны по ссылке для регистрации (ниже).
Ссылка для регистрации: Щелкните по этой ссылке, чтобы зарегистрироваться на курс.
Формат экзамена:
С каждым модулем будет письменный экзамен. Итак, всего будет 3 экзамена. Срок для завершения каждого модуля и экзамена составляет до 30 дней.
Прошел%: 80%
Щелкните здесь, чтобы получить полную информацию.
Сертифицированный профессиональный мастер-уровень Agile Software Test (CASTP-M)
Предварительным условием для получения этой сертификации является наличие сертификата CASTP-P и 2-летнего опыта работы в области тестирования программного обеспечения.Это очень полезно для опытных профессионалов в области тестирования, которые хотят добиться еще лучших результатов в своих гибких проектах.
Щелкните здесь, чтобы изучить дополнительную информацию об этом сертификате, касающуюся вариантов обучения, формата экзамена и т. Д.
Срок действия этого сертификата составляет 3 года, т.е. он истекает через 3 года, когда он был выдан. До этого времени вам нужно будет выполнить требования повторной сертификации.
Сертификация профессионального разработчика Scrum
Помимо вышеуказанных сертификатов в Agile-тестировании, вы также можете пройти сертификацию профессионального разработчика Scrum, предлагаемую Scrum.
Эта сертификация в основном предназначена для разработчиков, однако, поскольку тестировщики являются частью группы разработки или общей гибкой команды, эта сертификация может оказаться очень полезной и для тестировщиков. Этот сертификационный курс также имеет очень богатое содержание для гибкого тестирования.
Это стоит 200 долларов.
Щелкните здесь, чтобы получить полную информацию о сертификации.
Достаточно поговорив о сертификации гибкого тестирования, давайте теперь рассмотрим некоторые сертификаты автоматизации тестирования, которые помогут вам выделиться в области тестирования автоматизации:
Инженер по автоматизации тестирования продвинутого уровня
Эта сертификация, предлагаемая ISTQB, является предназначен для профессионалов, которые уже достигли продвинутой точки в своей карьере в области тестирования программного обеспечения и хотят и дальше развивать свои знания в области автоматизации тестирования.
Если вы получите этот сертификат, вы сможете внести значительный вклад в создание решений для автоматизации зданий и проектирование архитектуры автоматизации тестирования (TAA).
Щелкните здесь, чтобы увидеть программу экзамена.
Экзамен состоит из 40 MCQ, которые необходимо выполнить за 90 минут с 65% успешным прохождением. Щелкните здесь, чтобы получить более подробную информацию о структуре экзамена.
Вы можете просмотреть нижеприведенный PDF-файл для получения полной информации об этой сертификации:
Certified Automation Functional Testing Professional
Эта сертификация предоставляется V Skills — правительством Индии и правительством.совместного предприятия NCT Delhi.
Это государственная аттестация, не требующая минимального образования. Это полезно как для профессионалов, так и для студентов, которые занимаются (или хотят заниматься) в области тестирования программного обеспечения.
Этот курс много охватывает автоматическое тестирование и QTP.
Учебные материалы будут отправлены вам после регистрации на сертификацию. Экзамен состоит из 50 вопросов, которые необходимо выполнить за 1 час с 50% успешным прохождением.
Это стоит вам рупий. 3499.
Щелкните здесь, чтобы получить полную информацию об этой сертификации.
Сертифицированный специалист по автоматизации тестирования программного обеспечения
Эта сертификация, предлагаемая IIST, предназначена для тех сотрудников по автоматизации тестирования, которые хотят еще больше повысить свои навыки автоматизации тестирования и стать экспертом в этой области.
Щелкните здесь, чтобы получить полную информацию о предварительных условиях, структуре экзамена, требованиях к сертификации, стоимости и т. Д.
Сертифицированный архитектор автоматизации тестирования программного обеспечения
Если вы сертифицированы CSTAS, вы имеете право на получение этой сертификации.
Это предназначено для тех профессионалов в области тестирования, которые хотят участвовать в разработке TAA (архитектуры автоматизации тестирования) и фреймворков баз данных.
Щелкните здесь, чтобы получить полную информацию о предварительных условиях, структуре экзамена, требованиях к сертификации, сборах и т. Д.
В наши дни тестирование мобильного программного обеспечения также пользуется большим спросом. Итак, один из сертификатов, который может помочь вам в этой области, — это Certified Mobile Software Test Professiona l ( CMSTP ), который снова предлагается IIST.
Щелкните здесь , чтобы ознакомиться со всеми сертификатами, предлагаемыми IIST .
С развитием технологий и расширением области тестирования программного обеспечения появляется множество сертификатов и курсов, которые могут помочь вам продвинуться вперед. Кроме того, вам необходимо выбрать лучший сертификат для себя, исходя из вашего уровня опыта и типа должности, в которой вы находитесь или хотите быть.
Недавно я читал описание должности в организации для Test Analyst с 3 -5 лет общей эксп.Они требовали любой технической / бизнес-сертификации / сертификата качества: CSTE, ISTQB, CMMI , LOMA.
Итак, я предлагаю вам быть в курсе требований рынка и проверить, какие сертификаты наиболее востребованы на должностях. И тогда вы можете пройти эти сертификаты!
Заключение
На этом обучение не заканчивается. После уровня эксперта можно выбрать сертификацию PMP (Project Management Professional) или / и перейти к Agile-сертификатам, таким как CSM (Certified Scrum Master) / CSPO (Certified Product Owner).
После прохождения сертификации CSM вы можете продолжить обучение, переходя на следующий уровень, который называется CSP (Certified Scrum Professional), и постепенно переходите к Agile Coach или Trainer.
Как я уже говорил ранее, какую бы сертификацию вы ни выполняли, она должна соответствовать вашему опыту. Хотя вы получаете право на многие сертификаты продвинутого / экспертного уровня на начальном этапе карьеры, простое прохождение сертификации не гарантирует лучшего роста как с точки зрения личного обучения, так и с точки зрения профессиональных устремлений.
Например, , несмотря на наличие сертификата менеджера по тестированию от ISTQB, организации не предпочтут предоставлять вам роль и назначение менеджера по обеспечению качества, если у вас всего 5 лет опыта. Точно так же сертифицированный PMP профессионал с 5-6-летним опытом не подходит для выполнения роли менеджера проекта. Следовательно, нужно быть очень осторожным при выборе сертификации.
Пожалуйста, обратите внимание, что все сделанные мной рекомендации и мысли основаны на личном опыте и наблюдениях и могут иметь разногласия во мнениях.
Автор : Это руководство по сертификации написано членом команды STH Шилпа Рой.
Если у вас все еще есть вопросы по поводу получения сертификата, не стесняйтесь размещать их в комментариях ниже.
.
Специалист по тестированию программного обеспечения | Карьера | Вакансии
Специалист по тестированию программного обеспечения
Тип должности: Постоянная / Полная
Расположение: Стамбул / Европейская сторона
О Sestek
Sestek — глобальная технологическая компания, помогающая брендам с помощью диалоговых ИИ и аналитических решений управлять данными, работать эффективно и обеспечивать лучший опыт для своих клиентов. С 2000 года Sestek разрабатывает запатентованные технологии, играя ведущую роль в сотрудничестве между научными кругами и такими отраслями, как финансовые услуги, телекоммуникации, розничная торговля и государственный сектор.Решения Sestek на базе искусственного интеллекта зависят от технологий преобразования текста в речь, распознавания речи, обработки естественного языка и голосовой биометрии.
О работе
Мы являемся лидером на рынке решений для диалогового ИИ и аналитики в Турции, и мы становимся глобальным брендом с нашими растущими международными проектами. Мы ищем специалистов по тестированию программного обеспечения для нашего офиса в Стамбуле. Если вас интересует работа над технологиями на базе искусственного интеллекта, возможно, вы именно тот, кого мы ищем.
- Применение процедур испытаний
- Проведение функциональных тестов и тестов UAT
- Разработка новых сценариев тестирования и обновление тестовых документов в соответствии с процессами разработки
- Посещение совещаний по анализу проекта и участие на этапах проектирования,
- Создание тестовых настроек на виртуальных машинах, их обновление и поддержка при необходимости
- Отчет о результатах испытаний.
Общие требования
- Степень бакалавра в области вычислительной техники, математики, статистики или смежных областях
- Хорошее владение письменным и устным английским языком
- Хороший командный работник и готов взять на себя ответственность
- Обладающий хорошими аналитическими способностями и терпеливостью
- Готовы искать, изучать и использовать новые технологии
- Для кандидатов мужского пола военная служба должна быть завершена или отложена не менее чем на два года.
Технические требования
- Опыт работы с MS SQL Server 2012
- Опыт работы с платформой виртуальных машин Hyper-V или Vmware
- Базовые знания SQL, Postman и JMeter
- Базовые знания HTML, CSS, Javascript
Важное примечание: Отправьте свое резюме на [email protected] со ссылочным кодом «STS01»
.
Сертификат ISTQB по автоматизации тестирования
Постройте свою карьеру с сертификатом ISTQB по автоматизации тестирования от ASTQB.
Только ASTQB дает вам душевное спокойствие: вы можете бесплатно пересдать экзамен продвинутого уровня ISTQB, если соответствуете критериям!
ISTQB Advanced Level Test Automation Engineer может поднять вашу карьеру на более высокий уровень, потому что:
- Это показывает, что у вас есть сильная приверженность профессии тестирования и самосовершенствованию.Вы понимаете ключевой компонент тестирования: автоматизацию тестирования.
- Он демонстрирует, что у вас есть продвинутые навыки тестирования программного обеспечения. Ваши навыки автоматизации тестирования отличают вас от других.
- Это доказывает, что у вас есть желание продвинуться по карьерной лестнице и в вашей организации. Ваши навыки автоматизации тестирования делают вас ценной частью команды и лидером в своей профессии.
Автоматизация тестирования невероятно важна. Благодаря обещаниям эффективности и результативности тестирования, навыки автоматизации тестирования — это то, чего хотят работодатели. Эта сертификация учит вас принципам проектирования автоматизации тестирования независимо от того, какой инструмент вы можете использовать, будь то инструмент с открытым исходным кодом, такой как Selenium, или один из мощных коммерческих продуктов, что делает его идеальным для вас и всей вашей команды.
Ресурсы для подготовки
- Syllabi
- ISTQB Advanced Test Automation Engineer Программа сертификации
- Примеры экзаменов
- ISTQB Advanced Test Automation Engineer Сертификационный экзамен
- Глоссарий
- Глоссарий терминов по тестированию программного обеспечения
- Формат экзамена
- 40 вопросов | 90 минут
Вот шаги для получения сертификата ISTQB Advanced Level Test Automation Engineering:
- Загрузите бесплатную программу по автоматизации тестирования, представленную выше.
- Загрузите бесплатный образец вопросов и ответов для экзамена Test Automation Engineering выше.
- Пройдите обучение у аккредитованного ASTQB (проверенного) провайдера обучения программному обеспечению. Обучение всегда является необязательным, но его настоятельно рекомендуют другие, сдавшие сертификационные экзамены продвинутого уровня. См. 3 причины, почему.
- Зарегистрируйтесь на экзамен здесь, на веб-сайте ASTQB, чтобы вы могли появиться в списке, который проверяют работодатели США. (Еще одна важная причина сдавать только версии ASTQB экзаменов ISTQB: они написаны так, чтобы быть честными и понятными, без каких-либо дополнительных вопросов.)
- Сдать экзамен. Поздравляю! Теперь вы можете появиться в официальном списке сертификатов ISTQB / ASTQB, который работодатели США проверяют на предмет сотрудников и стороннего тестирования.
Если у вас еще нет сертификата Advanced Level, вот отличный совет от специалиста по тестированию, который получил все сертификаты Foundation и Advanced, предлагаемые ASTQB!
Кроме того, этот бесплатный подкаст о сертификации Advanced вдохновит вас . Послушайте описание опытного тестировщика:
- Почему не стоит бояться экзамена Advanced Level.Как говорит Том: «Почему я так долго ждал, чтобы сдать свой первый экзамен продвинутого уровня? Я понял, что это действительно не так страшно — все не так уж плохо. И вот тогда я получил следующий, и следующий ».
- Как подготовиться к экзамену, включая два очень важных совета. После сдачи экзаменов продвинутого уровня Том заключил: «Экзамены просто созданы для того, чтобы определить:« Вы усвоили материал? »Что ж, если вы усвоите материал, вы сдадите экзамен. Тогда вы собираетесь оглянуться назад и сказать: «Ну, это было не так уж и сложно.» Выучи его два совета.
- Почему для вашей карьеры и вашей компании важно получить сертификат Advanced Level. Как сказал Том о своей карьере: «Когда я впервые приехал сюда, меня наняли в качестве руководителя тестирования для нашего веб-предприятия и электронной коммерции. Но по мере того, как я разрабатывал и получал больше сертификатов, они подумали: «Ну, может, он тоже сможет это сделать». И поэтому я взял на себя больше обязанностей и продвигался вверх, так что теперь я управляю усилиями по тестированию для пяти основных области уровня предприятия, которые являются критическими областями.”
Это подкаст, который вас вдохновит!
ISTQB Advanced Test Automation Engineer делает вас лидером в одном из наиболее важных мероприятий по тестированию. Начните прямо сейчас, загрузив бесплатную программу Test Automation Engineering и образцы вопросов и ответов на экзамен выше.
.
Добавить комментарий