В воскресенье 8 января разработчики и тестировщики программного обеспечения

Тестировщик программного обеспечения: знакомство с профессией

Много слышали о тестировании и примеряете на себя возможность работы в этой области? Но пока не совсем понимаете, с чем придется работать?

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

Чем занимается специалист по тестированию?

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

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

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

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

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

К основным обязанностям тестировщика ПО относятся:

  • Написание тест-кейсов и чек-листов.

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

  • Выполнение нужного набора тестов.

В зависимости от поставленных задач специалист по тестированию решает, какие виды тестов применить.

  • Документирование и анализ найденных дефектов.

Когда найдена ошибка, ее нужно описать. Делается это для того, чтобы разработчик ПО смог быстро понять, в какой части кода программы кроется ошибка. Сейчас тестировщики вносят все ошибки в баг-трекинговые системы, например, JIRA или TestRail. Для более подробного описания ошибок можно приложить скриншоты экранов или видео.

  • Контроль за устранением ошибок разработчиками.

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

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

  • Разработка автоматических тестов.

Для ускорения тестирования могут применяться не ручные, а автоматизированные тесты. В таких случаях тестировщик пишет код проверки и запускает его. А программа автоматически выполняет тысячи нужных проверок, при этом сохраняя время тестировщику.

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

Что нужно, чтобы стать тестировщиком?

Несмотря на относительную молодость профессии тестировщика (не более 20 лет), сегодня сформирован набор требований, которые нужны для старта.

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

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

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

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

Какие виды тестирования ПО выделяют?

Чтобы понять, чем бы вы хотите заниматься, стоит узнать больше об основных видах тестирования. Все виды тестирования разделяют на две группы:

  • Функциональное (осуществляется проверка того, насколько хорошо система выполняет свои функции, если вообще выполняет).
  • Нефункциональное (тестируется в целом готовность системы к работе, осуществляется проверка всего, что может касаться пользовательского опыта, например, нагрузочное тестирование, тестирование безопасности).

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

Всего существуют четыре таких уровня:

  • Модульное, или юнит-тестирование, – проверка работы отдельных частей системы.
  • Интеграционное – тестирование взаимодействия нескольких частей программного продукта.
  • Системное – проверка программного продукта на соответствие заявленным требованиям.
  • Приемочное – финальное тестирование на определение уровня готовности ПО к использованию.

Подробнее с классификацией видов тестирования вы можете ознакомиться в этой статье.

Где и как работают тестировщики?

У специалистов в этой области есть много вариантов по трудоустройству. Многие выбирают работу в IT-компаниях, которые условно можно разделить на две основные группы:

  • Аутсорсинговые компании.

Этим узкоспециализированным QA-экспертам заказчики делегируют часть или все обязанности по тестированию программных продуктов. Аутсорсинговая компания дает возможность специалисту работать с иностранными заказчиками и пробовать себя в разных проектах.

  • Продуктовые компании.

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

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

Пример кейса по тестированию для новичков

Чтобы на деле увидеть, что делает тестировщик, давайте рассмотрим небольшую практическую задачу.

Необходимо протестировать форму регистрации в социальной сети LinkedIn.

Первое, что нужно сделать, – открыть сайт. Форма для регистрации выглядит следующим образом:


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

Затем мы проверим, среагирует ли форма на небезопасный пароль. Для этого, заполнив наши данные во всех полях, вводим пароль до 6 символов.

Сразу появилось предупреждение о том, что пароль слишком короткий. Теперь посмотрим, как приложение поведет себя, если мы будем вводить в поля нехарактерные символы. Например, внесем в поля «Имя» и «Фамилия» символы, отличные от букв.

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

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

Такой дефект можно охарактеризовать как малозначимый (minor), и относится он к пользовательскому интерфейсу. Проверки на ввод некорректных символов нужно провести для всех полей. Далее посмотрим, как поведет себя форма при вводе корректного электронного адреса. Например:

Форма приняла адрес и инициировала проверку безопасности. Адрес был введен корректно, структура соблюдена, присутствует символ «@».

Таким образом, мы протестировали форму регистрации для социальной сети и параллельно нашли малозначимый дефект в пользовательском интерфейсе. Напомним, что при некорректном вводе данных в поля «Имя» и «Фамилия» форма просит корректно заполнить лишь имя. Ошибка некритичная, но пользователь может не сразу заметить, что исправить нужно оба поля, а не одно.

Итог

Хотите научиться безошибочно распознавать дефекты, правильно их документировать и научиться выполнять основные задачи тестировщика? Курс « Основы тестирования ПО » от QA Academy поможет вам погрузиться в профессию, попробовать свои силы на практике, а главное – сделать первый шаг по карьерной лестнице.

Ведь хороший специалист по тестированию ПО всегда будет востребован как дома, так и за границей. Дерзайте!

IT-расследование: как стать тестировщиком программного обеспечения

Дата публикации: 2016-10-24

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

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

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

Задачи, которые ставятся перед тестировщиком

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

Слово «тестировать» означает «проверять, верифицировать» — то есть, подтверждать, что функциональность программы соответствует заявленной. Или не соответствует.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

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

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

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

Чтобы отыскать проблему в недрах программы (ее коде), иногда приходится быть изобретательным, проводить расследования, задавать нужные вопросы программистам. Профессионал никогда не ограничится стандартным чек-листом, он постоянно придумывает новые пути и комбинации, собственные способы тестирования продукта. Вот как проходят рабочие дни тестировщика.

Немного из истории тестирования

Знаете, когда тестировщики отмечают свой профессиональный праздник? 9 сентября. Именно в этот день, в 1945 году ученые из Гарварда тестировали вычислительную машину и нашли в ней бабочку, которая застряла в электромеханическом реле.
Они подробно документировали проделанную работу и внесли в отчет слово «дебаггинг» («debugging»), означающее «избавление от насекомого». Теперь на языке тестировщиков это слово используется для обозначения процесса поиска и устранения багов — причин неправильной работы оборудования, программы или игры.

Как и где учиться на тестировщика?

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

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

Почему? Во-первых, преподавателю приходилось по пол-урока объяснять некоторым индивидуумам, где найти ту или иную кнопочку, что такое база данных и т. д. То есть, те моменты, которые я знаю. В итоге потом по реально интересным и значимым темам мы пробегались «галопом по европам», т. к. времени на их подробное объяснение уже не оставалось.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Во-вторых, на курсах часто учат вещам, весьма отдаленным от реальной жизни. Больше теории, а не практики.

В-третьих, зачем ходить на курсы, если есть онлайн-уроки по тестированию, форумы, книги, в конце концов. Чаще всего новичкам советуют читать «Библию тестировщика» Сэма Канера, «Тестирование DOT COM» и «Тестирование веб-проектов» Романа Савина. Все, что вам расскажут на курсах, взято из Гугла и книг, только проанализировано и структурировано.

Что нужно знать тестировщику

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

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

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

Читайте также:  Архитектурная пленка для стекол: особенности и виды

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

Попрактикуйтесь в написании запросов к базам данных. Стандартные вопросы по SQL, которые вам могут задавать на собеседовании: select, join (full, left, right), update, like, delete, where, functions, insert. И это минимум — лучше ориентироваться и в других понятиях.

Немаловажны знания принципов работы сетей. Вы должны уметь настроить локальную сеть, знать, что такое HTTP, TCP/IP, OSI, PING между компьютерами.

Для тех или иных проектов могут требоваться знания по JSON, XPath, Jira, TestComplete, GIT, HTML, CSS, SVN, RedMine, XML, Ranorex, Selenium RC/GRID, CssSelectors, TrackStudio и т. д. Большинство из этих программ и технологий учатся за неделю. Так что не переживайте, если видите незнакомые слова.

Как найти работу тестировщиком?

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

Если у вас есть знакомый программист, можете предложить ему бесплатно протестировать его программы;

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

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

Если эта информация была вам полезна, поделитесь статьей с друзьями — возможно в них тоже есть талант тестировщика. Подписывайтесь на обновления, и вы узнаете много интересного о других интернет-профессиях, технологиях сайтостроения, языках программирования и т. д. Удачи и до новых встреч!

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Хотите узнать, что необходимо для создания сайта?

Посмотрите видео и узнайте пошаговый план по созданию сайта с нуля!

Тестировщик ПО: недопрограммист или высокооплачиваемая специальность?

Содержание статьи

«Все профессии нужны, все профессии важны». Эти слова Владимира Маяковского остаются актуальными вот уже не одно десятилетие. Сегодня мы поговорим о профессии тестировщика программного обеспечения (или просто тестера). Ты узнаешь, актуальна ли профессия тестера, сколько можно с помощью нее зарабатывать и как этой специальностью можно овладеть.

Актуальность профессии

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

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

Почему именно 9 сентября? Именно в этот самый день более 70 лет назад ученые из Гарварда проводили тестирование вычислительного монстра под названием Mark II Aiken Relay Calculator. Пусть тебя не смущает слово «Calculator» в названии: вес первого «Марка» точно известен и составлял 35 тонн. Вес второго, думаю, был не намного меньше.

Так выглядел калькулятор древности

Слово тестировщик, как ты уже догадался, происходит от английского tester — человек, выполняющий проверку чего-либо.

Сколько зарабатывают тестеры?

Каких-то пять лет назад считалось, что тестером может быть любой студент 1-2-го курсов. К тестерам относились несерьезно — как к «недопрограммистам». Формат такой работы подразумевал только подработку на время учебы в ВУЗе, а серьезно заработать, будучи тестировщиком, удавалось мало кому.

Итак, сколько зарабатывают тестеры? Могу поспорить, что ответ на этот вопрос тебя интересовал больше всего, раз ты начал читать эту статью. Тестеры со стажем в 2-3 года могут легко заработать около 100 000 рублей в месяц. Минимальная заработная плата составляет от 30 тысяч рублей, средняя около 50-60 т.р. Не буду приводить красивых графиков, приведу две вакансии, которые нашел за 5 секунд на сайте Яндекс.Работа: в первом случае предлагают до 90 т.р. (что вполне нормально), во втором — от 30 до 45 тысяч рублей.

Вообще, если поискать, можно встретить вакансии до 120 тысяч рублей, что даже превышает обещанные мною суммы.

Две первые попавшиеся вакансии

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

Условия, требования и обязанности

Просмотрев с десяток вакансий, могу рассказать хорошие новости. Работать можно, как в офисе, так и дома — выбирай тот способ работы, который тебе привычнее. Если долго добираться в офис, можно без проблем найти удаленную работу со свободным графиком работы. А это означает, что ты можешь учиться в ВУЗе и работать тестером. В этом плане ничего не поменялось. Конечно, на «удаленке» платят меньше, но и условия труда более удобные.

Образование требуется неполное высшее, а вот опыт работы нужен. Чаще всего требуют наличие опыта работы по специальности от 1 года. Вопрос, а где же получить опыт, если везде нужны уже опытные, остается открытым. Впрочем, это беда не только этой профессии, а и любой другой. Зарплата прямо пропорционально зависит от опыта работы — приличные деньги начинают платить тестерам с опытом работы от 2 лет.

Но не нужно думать, что тестеру не нужны никакие навыки, кроме умения нажимать на кнопки! Как минимум нужно:

  • знать основы языка программирования, на котором ведется разработка;
  • уметь работать с Bug-трекерами;
  • понимать, что такое функциональное тестирование;
  • иметь навыки работы со средствами автоматического тестирования (вроде Selenium для Java или PHPUnit для PHP);
  • уметь пользоваться MS Office для документирования результатов.

Процесс модульного тестирования в Microsoft Visual Studio: все тесты пройдены

В обязанности тестера входит:

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

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

Перспективы

Какие перспективы могут быть у тестера? Прежде всего, есть перспектива повышения зарплаты по мере роста опыта работы. Сегодня ты получаешь 30-40 тысяч рублей, через два года — почти 100 тысяч. Чем не перспектива? Даже если текущая компания не предлагает тебе такие деньги, всегда можно перейти в другую: опыт работы-то уже у тебя есть.

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

Где можно получить профессию тестировщика?

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

Но нужно отметить, что обучение в ВУЗе не всегда оправдано, особенно если речь идет о тестерах. Во-первых, учиться в ВУЗе долго. А если у тебя уже есть высшее образование (пусть даже не техническое) и ты хочешь освоить профессию тестера, то вообще нет смысла опять поступать в ВУЗ: на втором высшем ты будешь вынужден 2.5 года посещать лекции. Потерять целых 2.5 года! А если высшего образования у тебя нет, тогда ты можешь потерять целых 5 лет, за которые можно было бы не только освоить эту профессию, но и превратиться в очень востребованного специалиста.

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

В качестве альтернативы можно предложить курсы, позволяющие освоить профессию тестировщика ПО. Например, курсы от GeekBrains. Преимущества курсов в том, что ты экономишь и время, и деньги: они длятся всего 2 месяца и обойдутся тебе гораздо дешевле, чем обучение в ВУЗе по специальности «программист». Кроме того, на курсах ты получаешь:

  • эффективное онлайн-обучение в комфортное для тебя время;
  • видеозаписи всех занятий, все презентации и учебные пособия.
  • интересные домашние задания для закрепления материалов;
  • возможность задавать любые вопросы преподавателю;
  • сертификаты по каждому курсу и гарантированную стажировку (2 месяца);
  • возможность стажировки в IT-компании с последующим трудоустройством;
  • возможность принимать участие в настоящих стартапах и создавать свои проекты;
  • реальное портфолио и резюме для старта карьеры;
  • знания и навыки, которые окупят стоимость курсов за месяц работы в компании.

Сертификат

Уже через 4 месяца ты будешь обладать следующими навыками:

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

А самое главное, тебе не придется ждать несколько лет, а сразу можно будет приступить к работе!

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

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

Выводы

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

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

Специальный проект с компанией GeekBrains

Тестировщик ПО

Кем вы станете

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

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

Истории успеха

Учебный процесс

Работа с преподавателем

Занятия ведут практикующие Тестировщики ПО с профильным образованием и стажем работы по специальности от 5 лет.

Самостоятельная работа

После каждого урока вас ждет практическое задание. Также вы получите видеозаписи всех занятий, презентации и обучающие пособия.

Работа с наставником

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

Читайте также:  Как выбрать шкаф (тумба) под раковину в ванную комнату — фото, видео

Программа

5 практических курсов и 2 месяца стажировки

Тестирование ПО. Уровень 1

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

Тестирование ПО. Уровень 2

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

Введение в автоматизацию тестирования

Основы баз данных

Вы научитесь использовать различные базы данных: MS SQL, Postgre SQL и писать запросы на SQL.

Стажировка GeekBrains и Mail.Ru Group

На стажировке студенты применят полученные навыки и знания в командной работе над реальными задачами от Mail.Ru Group. Студенты под руководством преподавателя будут искать ошибки и составлять отчеты для последующего закрытия ошибок в сервисах Mail.Ru Group.

Подробная программа профессии “Тестировщик ПО”

В настоящее время в IT-сфере как никогда стала актуальной профессия тестировщика. В первую очередь, высок спрос на специалистов, занимающихся тестированием программного обеспечения. Основными обязанностями таких сотрудников являются выявление ошибок в работе программ и моделирование различных ситуаций, связанных с их дополнительной нагрузкой. Таким образом, обнаруживая и описывая погрешности, направляя отчеты о них для внесения исправлений в программу, тестировщики постоянно взаимодействуют с командой разработки. Курс “Тестировщик ПО. Уровень 1” от GeekBrains предназначен для тех, кто хочет начать карьеру в тестировании программных продуктов. В его рамках рассматриваются теория и практика создания тест-кейсов, тест-комплектов, оформления багов и отчетов по результатам тестирования. Данный курс – это 8 практических занятий, где Вы получите знания и навыки, необходимые для того, чтоб легко включиться в работу над созданием и улучшением IT-проекта.

Урок 1. Основные понятия в тестировании

Что представляет собой тестирование. Как определить качество ПО (стандарты ISO, критерии качества, метрики). Категории программных ошибок. Терминология.

Урок 2. Место тестирования в процессе разработки ПО

Цикл разработки ПО. Цикл тестирования ПО. Типы тестов в процессе разработки ПО. Соответствие тестирования методологии разработки ПО.

Урок 3. Классы эквивалентности и граничные условия. Классификация видов тестирования

Определение и поиск классов эквивалентности. Границы классов эквивалентности. Классификация тестирования

Урок 4. Разработка тест-кейсов

Определение и структура тест-кейсов. Характеристики хорошего теста. Аксиомы тестирования. Поддерживаемость тест-кейсов. Тест-комплекты. Чек-листы. Подготовка тестовых данных.

Урок 5. Работа с багтрекером

Определение и функции багтрекера. Как правильно формулировать задачи. Жизненный цикл (workflow) ошибок. Оперативное отслеживание задач в багтрекере.

Урок 6. Регрессионное тестирование

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

Урок 7. Организация процесса тестирования

Должностная иерархия в тестировании. Планирование и оценка сроков на тестирование. Критерий начала/завершения тестирования. Отчетность по результатам тестирования. Подготовка рабочего места.

Урок 8. Клиент-серверные приложения

Что такое клиент-серверная архитектура. Тонкий и толстый клиент. Что такое сервер? Что такое веб сервер и сервер приложений? N-звенная архитектура клиент-серверных приложений.

Многие считают, что профессия тестировщика является скучной и однообразной. Однако это мнение несправедливо. Профессиональный тестировщик – это, в первую очередь, человек, умеющий творчески подойти к решению стоящих перед ним задач. Опыт, приобретаемый в рамках этой профессии, может стать ступенью к карьере программиста. Важной особенностью работы тестировщика является возможность полноценного аутсорса и фриланса. Курс “Тестировщик ПО. Уровень 2” от GeekBrains предназначен для тех, кто уже знаком с основами тестирования и хочет получить более глубокие знания и навыки, требуемые для начала карьеры в IT-сфере. В его рамках разбираются способы исследования тестируемого ПО, изучаются техники определения необходимого количества тестов и способы визуализации тестируемого функционала. Данный курс – это 8 практических занятий, после которых Вы сможете проявить себя в качестве экспертного пользователя программного обеспечения, имеющего собственное видение наилучшей организации процесса тестирования.

Урок 1. Тест-анализ. Исследование ПО

Типы и цели исследования ПО. Декомпозиция приложения.

Урок 2. Доменное тестирование и комбинации параметров

Категории техник тестирования. Техники чёрного ящика. Доменное тестирование и комбинации параметров.

Урок 3. Тестовая комбинаторика

Создание тестового набора. Минимальные проверки. Перебор значений. Атомарные проверки. Pairwise. Метод взаимосвязанных проверок.

Урок 4. Тестирование состояний и переходов

Анализ ПО на возможные состояния и переходы. Выявление жизненных циклов сущностей и комбинация состояний. Выбор валидных проверок.

Урок 5. Тест-анализ на основе бизнес-логики

Выбор условий бизнес-требования. Создание таблиц решений. Комбинирование тестов на основе таблицы решений.

Урок 6. Тест-анализ на основе рисков (предугадывание ошибок)

Определение тестируемого функционала ПО. Выявление потенциальных ошибок и их градация. Определение стратегии.

Урок 7. Стратегия тестирования

Цели и задачи стратегии тестирования. Выбор подходящих техник в зависимости от функционала и особенностей. Учёт нефункционального тестирования.

Урок 8. Оценка эффективности тестов

Оценка тестового покрытия. Оценка эффективности тестов.

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

Урок 1. Введение в автоматизированное тестирование

Что такое автоматизированное тестирование; какие разновидности автоматизированного тестирования бывают; проектный выбор: ручное или автоматизированное; черный и белый ящик при автоматизации; обзор и выбор инструментария.

Урок 2. Стратегия автоматизированного тестирования. Практическое создание тестов при помощи Autoit.

Принятие решения о введении автоматизации; проектирование автотестов; стратегии автоматизированного тестирования; процесс развертывания автоматизации; тестовое окружение для проведения автоматизации; создание автотеста при помощи Autoit.

Урок 3. Виды автоматизированного тестирования

Виды автоматизированного тестирования; автоматизированное функциональное тестирование; инструменты юзабилити тестирования; автоматизированное нагрузочное тестирование.

Урок 4. Проект Selenium и его составляющие.

Цели, задачи, особенности Selenium. Selenium WebDriver. Selenium RC. Selenium Server. Selenium Grid. Пример использования Selenium IDE на практике.

Урок 5. Автоматизированное нагрузочное тестирование на примере Apache Jmeter

Нагрузочное тестирование; принципы и практика построения нагрузочных тестов; обзор инструментов; пример использования Apache Jmeter.

Урок 6. Автоматизированное мобильное тестирование

Тестирование мобильных приложений; автоматизированные инструменты – обзор, выбор; нагрузочное тестирование; мобильные эмуляторы; мобильные фермы.

Урок 7. Автоматизация процесса тестирования

Автоматизация процесса тестирование и создания тестов; утилиты для автоматизации процессов тестирования; генерация тестов; фреймворки; плагины.

Урок 8. Работа с требованиями и постановками задач

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

Базы данных (БД) – это системы хранения и обработки данных, для доступа к которым используется язык SQL (Structured Query Language). Любой современный сайт, игра или настольное приложение нуждаются в хранении данных. На данный момент существует множество различных систем управления базами данных (СУБД), самой популярной является MySQL. “Основы баз данных” – это 20 интенсивных видео-уроков (по 10 минут), где мы вместе пройдём все этапы проектирования БД на примере интернет-магазина с использованием языка запросов SQL. После этого курса вы сможете использовать различные базы данных, такие как MS SQL и Postgre Sql, так как синтаксис языка SQL для них практически не отличается.

Урок 1. Реляционные базы данных

Чем отличается БД от СУБД; какие базы данных называются реляционными; обзор современных СУБД.

Урок 2. Установка СУБД

Установка СУБД MySql и графического приложения Mysql Workbench.

Урок 3. Проектирование базы данных, нормальные формы

Проектирование данных в Excel; нормальные формы; первичный ключ.

Урок 4. SQL-команда CREATE

Создание таблиц в графическом интерфейсе MySql Workbench; команда CREATE; типы данных; работа в консоли.

Урок 5. SQL-команда INSERT

Заполнение таблиц данными с помощью графического интерфейса; команда INSERT; AUTO INCREMENT.

Урок 6. SQL-команды SELECT и WHERE

Получение и фильтрация данных с помощью SQL-команд SELECT и WHERE; проверка на NULL; фильтрация данных по нескольким условиям.

Урок 7. SQL-команды DISTINCT, ORDER BY, LIMIT

Получение и фильтрация данных с помощью SQL-команд DISTINCT и LIMIT; сортировка с помощью команды ORDER BY.

Урок 8. SQL-команды DELETE и UPDATE

Обновление и удаление данных с помощью SQL-команд DELETE и UPDATE; фильтрация данных с помощью WHERE IN.

Урок 9. Согласованность данных

Понятие согласованности или консистентности данных.

Урок 10. Внешний ключ

Понятие внешнего ключа и ограничений на значения столбцов; FOREIGN KEY CONSTRAINTS.

Урок 11. Создание таблиц с отношением “многие ко многим”

Добавление корзины в базу данных интернет-магазина.

Урок 12. Составной первичный ключ

Использование составного первичного ключа при проектировании таблицы с отношением “многие ко многим”.

Урок 13. Объединение данных из нескольких таблиц

Получение данных из нескольких взаимосвязанных таблиц; несостоятельность подхода с использованием нескольких SELECT-ов.

Урок 14. Оператор INNER JOIN

Объединение данных из нескольких таблиц с помощью оператора INNER JOIN.

Урок 15. Операторы LEFT JOIN, RIGHT JOIN

Объединение данных из нескольких таблиц с помощью операторов LEFT JOIN и RIGHT JOIN.

Урок 16. Оператор UNION

Объединение результатов нескольких SQL-запросов с помощью оператора UNION.

Урок 17. Агрегирующие функции

Агрегирующие функции COUNT, SUM, MIN, MAX.

Урок 18. Оператор GROUP BY

Группировка выбранного набора строк с использованием оператора GROUP BY.

Урок 19. Индексы

Фильтрация в GROUP BY с использованием HAVING; увеличение скорости выполнения запросов с использованием индексов.

Урок 20. Транзакции

Понятие транзакции; оператор TRANSACTION; требования ACID к транзакционной системе.

За 2 месяца стажировки вы получите реальный опыт работы тестировщиком. Вы примете участие в тестировании продуктов Mail.Ru и нескольких небольших проектов. Стажировка проходит в формате вебинаров. Продолжительность: 2 месяца.

Урок 1. Введение в стажировку

Как будет проходить стажировка; что потребуется. План занятий.

Урок 2. Анализ требований

Аналитика проекта; поиск документации; составляем требования.

Урок 3. Планирование тестирования

План тестирования, стратегия.

Урок 4. Тестовая документация

Тест-кейсы, чек-листы; функциональное тестирование.

Урок 5. Тестовая документация

Тест-кейсы, чек-листы; юзабилити-тестирование.

15 книг по тестированию программного обеспечения

Учиться тестированию можно по-разному. Хорошие книги — источник базовых знаний и практического опыта экспертов.

Автор в сфере IT, digital, экономики и финансов. Ведет некоммерческий проект для начинающих писателей «ЛитЦех».

Книги на русском языке

Святослав Куликов

«Тестирование программного обеспечения. Базовый курс»

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

Роман Савин

«Tестирование dot com»

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

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

Преимущество книги Романа Савина «tестирование dot com» еще и в русском языке оригинала, что исключает проблему неточностей перевода.

Канер Сэм, Фолк Джек, Нгуен Енг Кек

«Тестирование программного обеспечения»

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

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

Борис Бейзер

«Тестирование черного ящика»

Технологии функционального тестирования программного обеспечения и систем

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

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

Гленфорд Майерс, Том Баджетт, Кори Сандлер

«Искусство тестирования программ»

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

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

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

Читайте также:  Детские качели своими руками – как сделать уличные качели для дачи: виды, лучшие варианты, идеи + фото

Рекс Блэк

«Ключевые процессы тестирования»

Оптимизация ресурсов и временных затрат на тестировании — важная и острая тема для команд разработки. Книга Рекса Блэка через контроль рисков рассказывает о 12 процессах тестирования.

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

Лиза Криспин, Джанет Грегори

«Гибкое тестирование»

Практическое руководство для тестировщиков ПО и гибких команд

Книга посвящена методике гибкого тестирования: это использование квадрантов гибкого тестирования, набор средств для него, требования к команде QA-специалистов, итерация гибкой разработки и факторы успеха применяемой стратегии.

Рекомендуется ведущим тестировщикам и специалистам среднего уровня.

Элфрид Дастин, Джефф Рэшка, Джон Пол

«Автоматизированное тестирование программного обеспечения»

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

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

Арбон Джейсон, Каролло Джефф, Уиттакер Джеймс

«Как тестируют в Google»

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

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

Книги на английском языке

Cem Kaner, James Bach, Bret Pettichord

«Lessons Learned in Software Testing»

Книга привлекает практической направленностью: авторы с богатейшим опытом собрали 293 урока, где коснулись основных вопросов тестирования ПО. Будет полезна и для новичков, и для опытных специалистов.

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

Boris Beizer

«Software Testing Techniques»

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

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

Ajay Balamurugadas, Sundaresan Krishnaswami

«Mobile Testing: Ready Reckoner»

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

Mike Andrews, James A. Whittaker

«How to break web software»

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

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

James A. Whittaker

«How to Break Software Security»

Вторая книга Витакера — пошаговое руководство по тестированию безопасности приложений. Ее лучше читать после «How to break web software».

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

Автор рассказывает о верхнеуровневых классах проверок, например, на уровне кода или GUI, и приводит 19 атак на защищенность приложения. Каждое описание атаки или инъекции состоит из вводной части, описания случаев применения и руководства по нему.

Gerald M. Weinberg

«Perfect Software and other illusions about testing»

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

Автор приводит реальные типичные ошибки в подходах, а учиться на ошибках — самое полезное дело. В совместной работе специалисты часто переводят стрелки друг на друга и отказываются фиксить и документировать баг, ссылаясь на то, что это не их зона ответственности. Что с этим делать и как с этим жить — в том числе рассказывает Gerald M. Weinberg.

Заключение

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

Как стать тестировщиком ПО: от собеседования до поиска первого бага

Руководитель отдела тестирования компании Globus Алексей Сёмин рассказывает, как стать тестировщиком, и даёт несколько ценных советов из личного опыта. Если вы хотите попробовать себя в качестве специалиста в области тестирования, то эта статья поможет сделать первый шаг.

Мой путь тестировщика начался с любопытства. С самого детства я занимался сборкой компьютеров и установкой ПО, в ходе работы регулярно возникали вопросы: «Почему не устанавливается? Почему не работает?». В этот момент я подумал, что хочу стать тестировщиком, заниматься выпуском качественного ПО и узнать ответы на все эти вопросы.

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

Собеседование

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

Например, задаём необычные вопросы, чтобы посмотреть, как мыслит человек:

  • Самолёт вылетает из точки А в 17:00, а прилетает в точку Б в 19:00. При этом находится в полёте три часа. Почему такое может быть?
  • Как сделать так, чтобы, получив обновлённое приложение, конкуренты не смогли узнать его новые функции?

Будьте готовы и к самому обычному заданию — протестировать простой предмет: лист бумаги, карандаш, сетевой фильтр и тому подобное.

Также для собеседования будет полезно:

  1. Изучить виды тестирования: функциональное и исследовательское тестирование, автоматизированные тесты (включая инструменты для него), нагрузочное и стресс-тестирования, smoke-тестирование.
  2. Дополнительно почитать о приёмочном тестировании и его критериях.
  3. Если мы говорим о тестировании веб-приложений, то это браузерная консоль и её работа, количество и версии браузеров, разрешения мониторов, инструменты тестирования вёрстки (pixel perfect).
  4. Если мы говорим о мобильных приложениях, это виды платформ, эмуляторы, monkey testing. Не забудьте о планшетах.
  5. Изучить виды баг-трекеров. Самые популярные: Jira, BugZilla, RedMine, Mantis. Посмотрите, как они работают, в чём их особенность.
  6. В перспективе — инструменты Jmeter, Postman, Charles. Они не очень сложны в освоении на базовом уровне.

Первый рабочий день

Первый рабочий день проходит стандартно: выдают компьютер, который нужно настроить, установить рабочие программы. Системный администратор готовит доступы к почте и корпоративным внутренним программам.

Не стоит спрашивать, где установить Skype, использовать в нём ник со школьных времён gangsta_666 или забавную картинку. Используйте в нике сочетание имени и фамилии, например ivansmirnov или smirnovivan, поставьте свою обычную фотографию.

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

Первое задание

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

Проявляйте инициативу. Если вам не дали чек-лист приложения, не ждите, а попросите его у ментора. Если в организации нет чек-листа, вы можете составить его сами. В нашей компании чаще чек-лист составляют в «Google Таблицах». Ниже мы привели пример такого чек-листа — вы сможете составлять свои по его примеру.

Коллеги будут удивлены, если составите чек-лист в виде карты мыслей, например в Xmind.net.

Чек-лист для тестирования Pokémon GO

Одним из первоочередных видов тестирования для начинающего QA-специалиста, возможно, станет прохождение по чек-листам, тест-кейсам более старших специалистов. Этот этап необходим для более быстрого погружения в проект. Для наращивания тестовой базы новичок может сам расширять этот чек-лист. Junior-тестировщики в рамках обучения написанию чек-листов подготовили лист для тестирования приложения Pokémon GO. Тут описаны только позитивные кейсы.

Первый баг в трекер

Описание багов в разных компаниях может различаться, но в целом есть принципы хорошего тона.

В ней описывают проблему несколькими словами. Лучше, если она будет начинаться с отрицания: «не работает», «не происходит», «неправильно» и прочее. Например: «Не происходит синхронизация с сервером на iPhone 6», «Не работает воспроизведение видео в Nexus 5».

Сценарий

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

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

В конце сценария указывается среда, в которой проводилось тестирование: версия приложения, прошивка девайса (Android 6.0.1, iOS 9.3.2). Если это веб-приложение, дополнительно укажите версию браузера.

Назначение бага

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

Проставление критичности

Виды критичности багов в большинстве трекеров представлены следующим списком:

Immediate (Blocker)

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

Crit — Urgent

Критическая ошибка, нарушена ключевая бизнес-логика. Проблема приводит к временному падению сервера или приложения без возможности её решения. Устранение проблемы необходимо для тестирования.

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

Normal

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

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

Самообучение

О важности самообучения все прекрасно знают — мои наставления будут банальны. Так что сразу к делу.

Ниже — несколько книг, которые лично рекомендую своим стажёрам:

  • «Тестирование DOT COM», Роман Савин — очень полезное пособие, практически настольная книга начинающего тестировщика. Содержит в себе львиную долю знаний для того, чтобы начать тестировать и успешно отвечать в ходе собеседования на вопросы, касающиеся технико-теоретической части.
  • «Как тестируют в Google» — более глубокая книга, описывающая организацию процессов, различные стратегии и подходы к тестированию. Книга помогает понять, что такое качество, как и на каких этапах на него можно влиять.
  • «A Practitioner’s Guide to Software Test Design», Lee Copeland — в книге расписаны виды тестирования как «белым», так и «чёрным» ящиком. Перечислены различные техники тестирования, а также то, как ими пользоваться и когда лучше применять. В книге можно найти интересную статью об исследовательском тестировании, которая очень полезна для начинающих тестировщиков.

Коллеги, напишите в комментариях названия интересных книг для тестировщиков. Уверен, всем будет полезно.

Заключение

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

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

Ссылка на основную публикацию