Qa инженер (qa engineer)
Содержание:
- Навыки необходимые для тестировщика
- Какие вопросы чаще всего задают на собеседовании на данную позицию? Чего в iTechArt ждут от Manual QA Engineer, чтобы сделать job-offer?
- Экскурс в историю
- Опиши основные обязанности Manual QA Engineer. Что представляет из себя работа тестировщика-мануальщика и как выглядит его типичный трудовой день?
- Что делает тестировщик
- Как стать QA-тестировщиком
- Полезные ссылки
- Есть ли у начинающих Manual QA какие-либо мифы о профессии, которые развеиваются с началом реальной работы?
- «Introduction to Software Testing» от Coursera
- Как это может выглядеть на практике?
- Образование
- Вопросы и логические задачи для QA-инженеров
- Как проходит собеседование
- Заработная плата
- Тестировщик – каким он должен быть?
- Есть ли у тебя какой-нибудь персональный лайфхак, который бы упростил жизнь всем QA-автоматизаторам?
- «Тестирование ПО: подготовка к сертификации ISTQB Foundation» от Stepik
- Жизненный цикл тестирования программного обеспечения
- Особенности профессии
- Заключение
- Заключение
Навыки необходимые для тестировщика
Для каждой исследуемой системы подходит определённый вид тестирования. Чтобы понимать чем предстоит заниматься в каждом направлении и какие навыки понадобятся, рассмотрим список ниже:
Функциональное тестирование — проверка отдельных опций системы. Чтобы проводить такое тестирование, специалисту нужно знать функциональные требования к продукту, разбираться в спецификациях и стандартах качества, предъявляемых к продукту.
Нагрузочное тестирование — тестировщик проверяет, выдержит ли программа высокую нагрузку и как проявит себя при сбоях. Специалист должен уметь определять скорость выполнения операций, количество пользователей на платформе и возможности работы приложения при больших нагрузках.
Автоматизированное тестирование — проверка в автоматическом режиме, которое ускоряет процесс
Специалисту важно уметь определять инструменты тестирования и области ПО, которые можно проверить в автоматическом режиме.
Юзабилити тестирование — проверка удобства интерфейса для пользователя. Чтобы это проверять, тестировщик должен разбираться в особенностях интерфейсов и особенностях бизнеса
Он должен понимать как компания зарабатывает, как взаимодействует с клиентами и какие цели преследует.
Конфигурационное тестирование — проверка работы программы на разных устройствах и платформах.
Тестирование безопасности — проверка степени защищённости продукта от внешних угроз, вроде вирусов или атак хакеров. Тестировщику важно разбираться в видах уязвимостей и находить «болевые» точки продукта.
Игровое тестирование — исследование игры на ошибки. Тестировщику игр нужно проходить игру много раз в разных версиях и на разных устройствах.
Каждый из этих видов направлен на поиск и исправление ошибок и на то, чтобы сделать программу лучше для пользования.
В отдельной статье разбираем, что нужно знать новичку, чтобы стать QA-тестировщиком
Какие вопросы чаще всего задают на собеседовании на данную позицию? Чего в iTechArt ждут от Manual QA Engineer, чтобы сделать job-offer?
В первую очередь, будьте готовы, что у вас спросят обо всем, что вы указали в резюме. Поэтому стоит указывать те скилы и технологии, которыми вы действительно владеете. От специалиста без опыта ожидается четкое усвоение теории по темам, преподаваемым на курсах (обязанности тестировщика, тестирование требований, техники тест-дизайна, тестовая документация, баг репорты и т.д.).
Кроме этого мы ожидаем, что кандидаты будут владеть профессиональной технической терминологией и, соответственно, разбираться хотя бы на уровне теории в основных технических вопросах (клиент-серверная архитектура, базы данных, API)
Не стоит также недооценивать важность владения английским языком, так как это основной язык, на котором общаются заказчики нашей компании. К сожалению, даже при наличии достаточного технического бэкграунда вы не сможете работать на проекте и при этом быть отрезанным в плане коммуникации
И заключительное в моем списке, но не последнее по важности – в iTechArt сделают оффер тем соискателям, которые показывают высокий уровень мотивации и заинтересованности как в самой профессии, так и в нашей компании. Горящие глаза будущих remarkable people очень вдохновляют
Экскурс в историю
Многие уверены, что тестировщик (QA-инженер) – сравнительно новая профессия, появившаяся примерно в середине 1990-х годов. Это ошибочное мнение. Ручной метод тестирования, проверка готового компьютерного продукта на работоспособность практиковались еще в самом начале информационной эпохи. В 1950-е – 1960-е годы мануальным тестированием активно занимались в научных институтах и кибернетических корпорациях. Первые попытки автоматизировать процесс пришлись на 1980-е годы, и они оказались успешными. Разработка инструментов, существенно облегчавших работу тестировщика, стала поворотным моментом для представителя этой профессии. Если раньше им мог стать лишь высококвалифицированный сотрудник научного учреждения, то после внедрения программного тестирования к выполнению таких задач могли допускаться даже те, кто осваивал эту сферу деятельности самостоятельно, без учебы в вузе.
Повышение востребованности профессии мануального тестировщика было обусловлено:
- стремительным увеличением количества выпускаемых программ для персональных компьютеров;
- ростом сложности разрабатываемого программного обеспечения (ПО);
- ориентацией системной продукции на массового пользователя.
В течение многих лет профессиональный тандем ручного тестировщика и программиста успешно справлялся с задачей поиска дефектов программного продукта и последующим выпуском протестированной работоспособной версии
Особую важность его работа обрела в период активного выпуска новых компьютерных игр, когда нужно было тщательно следить за правильным и бесперебойным функционированием каждого их компонента. Со временем процесс выполнения тех задач, которые специалист делал вручную, был автоматизирован
В результате заказчик получил значительную экономию бюджета, сокращение сроков производства продукта и, соответственно, его удешевление. Таким образом, буквально за несколько лет круг обязанностей мануального тестировщика существенно сузился, а вот требования, предъявляемые к нему, наоборот, возросли. Рассмотрим, чем сейчас занимается QA-инженер.
Опиши основные обязанности Manual QA Engineer. Что представляет из себя работа тестировщика-мануальщика и как выглядит его типичный трудовой день?
В отношении типичного трудового дня – он может разниться в соответствии с фазой проекта или спринта. Но в целом обязанности Manual QA можно свести к следующему:
- анализ требований – тестировщик должен четко понимать, что должно делать ПО и как оно должно работать, а также способствовать тому, чтобы у всех членов команды было одинаковое представление об этом;
- составление тестовой документации – для самого тестировщика это уверенность в том, что баги не будут пропущены, для других участников процесса – прозрачность и возможность иметь представление о том, какие проверки проводятся;
- непосредственно функциональное и нефункцинальное тестирование продукта;
- оформление баг-репортов и отчетов о тестировании.
Можно сказать, что типичный трудовой день Manual QA включает в себя по чуть-чуть все эти активности.
Что делает тестировщик
Тестировщик ПО старается найти все возможные ошибки, которые могут возникнуть у пользователя при взаимодействии с продуктом. Например, при работе с поисковой строкой проверяются все сценарии: вводится лимитное число символов на разных языках, проверяется ввод «нетипичных» знаков и так далее.
На первый взгляд кажется, что тестировщик работает с продуктом как обычный пользователь, но это не совсем так. Перед началом работы тестировщик составляет план действий, а также определяется с методами, которые будет использовать для тестирования предстоящего продукта.
Вместе с этим тестировщик взаимодействует с аналитиком, который составляет сценарий, что должно произойти после тестирования определенного этапа. Например, какие данные должны быть на входе, как они обрабатываются и так далее. Тестировщик на основе этого «идет» по продукту и составляет отчет. Выглядеть он может так:
Иногда даже детальная проверка не помогает найти все ошибки, поэтому тестировщикам приходится думать над различными ситуациями, способными «поломать программу». В таком процессе задействуются творческие и аналитические способности, которыми хорошо должен обладать тестировщик.
Как стать QA-тестировщиком
В вузах отдельной специальности «QA-engineer» нет, но можно выучиться на программиста. Обычно в рамках этой специальности есть курс по веб-тестированию. Обычно он краткий и чтобы полностью разобраться в тестировании придётся читать дополнительную литературу
Также для тестировщиков важно оттачивать практические навыки, а в институте для этого обычно нет возможности — практику придётся получать на работе или проходить дополнительные онлайн-курсы
На онлайн-курсах преподают действующие специалисты. Они подбирают оптимальную учебную программу, задают домашние задания и проверяют их. Такой формат обучения позволяет студентам быстро освоить необходимые знания и отточить навыки на практике.
По окончании — выдаётся диплом о прохождении курсов. Многие студенты уже во время обучения смогут начать зарабатывать удалённо. А некоторые онлайн-школы трудоустраивают своих студентов в компании-партнёры.
Полезные ссылки
- Сообщество тестировщиков в ВКонтакте (QA Club);
- Интернациональный клуб тестировщиков в Facebook;
- Форум тестировщиков Software Testing;
- Группа ВКонтакте QA Soft;
- Telegram канал “Тестирование и жизнь” (@testing_and_life);
- Telegram канал “Серьезный тестировщик” (@serious_tester);
- Твиттер “Типичный тестировщик”;
- Статья “Как я стал тестировщиком, не имя опыта в IT”;
- Статья “Мне за 30 и я стал тестировщиком, не зная английского”.
Работа тестировщиком — настоящий билет в IT. Но неуважительно воспринимать профессию только в этом ключе, ведь деятельность эта самодостаточна и такая же важная, как программирование.
В общем, работа точно интересная, хотя может не показаться таковой в первые месяцы.
Есть ли у начинающих Manual QA какие-либо мифы о профессии, которые развеиваются с началом реальной работы?
Мне кажется, что да, мифы существуют. Такие выводы я могу сделать на основании некоторых выражений, которые слышу от кандидатов во время интервью. Вот некоторые из них:
а) «Я хочу стать тестировщиком, потому что мне нравится «ломать» софт». На самом деле, когда осознаешь всю ответственность своей задачи по контролю качества, когда вместе со всей командой вкладываешься в развитие продукта, огромное удовольствие получаешь от того, что приложение «не ломается», с какой бы ты стороны ни зашел, какие бы проверки ни проводил.
б) «Я бы хотел «потрогать», «пощупать», «поиграть» с определенными технологиями, приложениями». Возможно, со стороны работа тестировщика и может показаться похожей на игру или поверхностное знакомство с продуктом. На самом же деле тестирование – это сложный и трудоемкий процесс, требующий от специалиста определенного уровня подготовки, терпения и усидчивости. Мы не «трогаем» объект тестирования, не «играем» с ним, мы разбираем его по винтикам, досконально изучаем и снова собираем, чтобы получить полное представление о его работе и соответственно дать оценку его качеству.
«Introduction to Software Testing» от Coursera
Длительность: 4 недели.
Формат обучения: видеолекции, материал для самостоятельного изучения, тесты.
Программа обучения: курс знакомит учащихся с основными принципами и процессами тестирования ПО. От студентов требуется понимание жизненного цикла разработки ПО и знание Java (подойдёт и другой язык ООП).
Чему научитесь:
- Понимать терминологию тестирования.
- Самостоятельно писать тесты для различных целей.
- Разрабатывать план тестирования.
- Использовать инструменты автоматического тестирования.
- Создавать отчёты о дефектах.
Плюсы:
- Понятное объяснение сложных терминов.
- Отличная организация учебного процесса.
- Профессиональные преподаватели.
- Много реальных примеров.
- Субтитры на русском языке.
Минусы:
Как это может выглядеть на практике?
Во время процесса разработки, QA-инженер контактирует со множеством людей, которые работают над проектом и над разрабатываемом ПО.
Сначала, QA -инженер узнает все необходимые требования к программному продукту или приложению у заказчика. Под них, QA-инженер пишет тесты для проверки удовлетворенности всех требований к продукту. Затем, при разработке, по результатом тестирования, в случае, если были найдены ошибки и баги — QA-инженер пишет задачи для программиста/ов на доработку кода. Таким образом, происходит улучшение качества процесса разработки и соответственно, самого программного продукта.
Поэтому, чтобы стать хорошим QA-инженером — специалист, дополнительно, должен разбираться и ориентироваться во многих областях и иметь навыки от разных профессий. Так, QA-инженер должен иметь базовые знания принципов разработки и тестирования ПО (от тестировщика и девелопера), заканчивая пониманием, как разрабатываемое ПО или приложение должно работать и чтобы это было удобно для обычных пользователей.
Образование
Получить диплом по профессии тестировщик программного обеспечения невозможно, так как именно эту специализацию учреждения не преподают. Есть смежные профессии, основанные на знаниях программирования, информатики, математики. Пройдя обучения, дополнив знания практикой, самостоятельным изучением некоторых областей, а также окончив курсы, можно успешно устроиться на работу.
У многих работодателей в приоритете высшее образование, но даже имея среднее, есть шансы реализовать себя в области IT-технологий, включая профессию тестировщика.
Если рассматривать учебные заведения, с дипломами которых можно начинать карьеру тестировщика программного обеспечения, то отмечаются следующие:
- МГТУ им. Н.Э. Баумана – Московский государственный технический университет имени Н.Э. Баумана.
- НИУ МГСУ – Московский государственный строительный университет.
- МГУТУ имени К.Г. Разумовского – Московский государственный университет технологий и управления имени К.Г. Разумовского.
- СПбПУ – Санкт-Петербургский политехнический университет Петра Великого.
- УрФУ им. Б. Н. Ельцина – Уральский федеральный университет им. Б. Н. Ельцина (Екатеринбург).
- НГУ – Новосибирский национальный исследовательский государственный университет.
- ТПУ – Национальный исследовательский Томский политехнический университет (Томск).
- КФУ – Казанский (Приволжский) федеральный университет (Казань).
- ЮФУ – Южный федеральный университет (Ростов на Дону).
- СКФУ – Северо-Кавказский федеральный университет (Ставрополь).
На территории России более 300 ВУЗов, выпускающих специалистов в сфере информационных технологий, программирования.
Если нет возможности поступать в высшее УЗ, то есть и ССУЗы. Насчитывается больше 100 заведений, включая:
- Санкт-Петербургский технический колледж управления и коммерции.
- Университетский политехнический колледж Санкт-Петербургского политехнического университета Петра Великого.
- Колледж связи №54 им. П.М. Вострухина (Москва).
- Московский приборостроительный техникум Российского экономического университета имени Г.В. Плеханова (Москва)
- Нижегородский радиотехнический колледж.
- Омский авиационный колледж имени Н.Е. Жуковского
- Новосибирский химико-технологический колледж имени Д.И. Менделеева.
Только полученного диплома иногда бывает недостаточно, чтобы сразу утроиться на желаемую должность. Потребуются некоторые практические знания, в ряде случаев дополнительные курсы, где информируют о современных технологиях, инновационных методах обслуживания ПО.
Дополнительное образование, курсы
Даже не имея профильного образования в области информатики, программного обеспечения, есть возможность обучиться профессии тестировщика. Есть несколько вариантов – получить дополнительное образование или пройти курсы переподготовки.
Дополнительное образование предполагает поступление в профессиональное учебное заведение, где предоставляется лекционный материал, проводятся практические занятия. Это может быть колледж или ВУЗ, обучение очное, заочное, совмещенное с дистанционным прохождением материала.
Курсы переподготовки можно окончить дистанционно, что позволяет экономить время, изучать материал в удобное время. Обучение подойдет для тех, кто уже имеет определенную базу знаний, требуется ее расширить, повысить квалификацию. Это практикуется во многих областях, включая компьютерные, информационные
Важно уточнить, государственного ли образца будет диплом, так как это станет подтверждением достойного уровня образования
Вопросы и логические задачи для QA-инженеров
Мы подготовили для вас примерный перечень вопросов и логических задач, которые вы сможете использовать во время интервью.
Теоретические вопросы
- Что такое динамическое тестирование?
- Назовите цели тестирования.
- Что такое тестирование на основе рисков?
- Что такое позитивное и негативное тестирование?
- Что такое тестирование end-to-end (сквозное)?
- Что такое Monkey Testing?
- Какие вы знаете типы тестов и какие из них применяли ранее?
- Зачем нужна автоматизация тестирования и когда её нужно применять?
- Как понять, что тестирование закончено?
- Что значит стресс-тестирование?
- Что такое тест-кейсы?
- Чем отличается валидация от верификации?
Вопросы, которые помогут понять кандидата
- Что вам нравится и не нравится в вашей работе?
- Как вы организовываете свой рабочий процесс?
- Где вы черпаете новые знания?
- Расскажите о своем последнем проекте.
- Какую роль вы выполняете в команде? Опишите свои главные задачи.
- Что будете делать, если вам надоест рутинная монотонная работа?
Также можно задать ситуационные вопросы, по типу: «Что вы будете делать, если попадете на проект, где вы – единственный тестировщик? С чего вы начнете работу».
Логические задачи
Задание от Google
У вас есть восемь одинаковых шаров. Нужно определить самый тяжелый из них с помощью весов и двух взвешиваний.
Разгадка. Шесть шаров нужно поделить на две группы по три шара и взвесить их. После того, как определится группа с более тяжелым шаром, взять из нее любые два и также взвесить. Если среди них тяжелый шар – это будет видно. Если вес одинаковый – тяжелым будет тот, что остался. Если тяжелого шара среди групп по три не оказалось, он среди двух, которые остались.
Почему канализационные люки имеют круглую форму?
Разгадка. Задача имеет два ответа. Первый – за счет равного диаметра круга люк не проваливается в канализацию, второй – круглые люки легче переносить.
Почему фраза «The quick brown fox jumps over the lazy dog?» считается уникальной?
Разгадка. Во фразе собраны все буквы английского алфавита. Задание поможет проверить насколько человек внимательный.
Вопросы на знание английского языка
Попросите кандидата без подготовки дать ответы на следующие вопросы на английском языке:
- Цели и задачи тестирования.
- Опишите пример одного из ваших багов.
- Почему решили сменить место работы или что заинтересовало в нашей компании?
Мы хотим отметить, что вышеперечисленные вопросы – это лишь вершина айсберга. Чтобы собеседовать более серьезных специалистов, нужно будет включать алгоритмы, спрашивать языки программирования и создавать вопросы с техническим специалистом.
Как проходит собеседование
В процессе беседы с соискателем руководитель группы разработчиков хочет не только услышать стандартные фразы из резюме и убедиться в наличии документов, подтверждающих профпригодность, но и проверить его готовность к работе. Собеседование, как правило, состоит из таких компонентов:
- задача на логику;
- теория и практика тестирования;
- проверка уровня владения английским языком;
- вопросы о навыках и личных качествах.
Для проверки знания теории кандидата на должность QA-инженера могут попросить рассказать о процессе тестирования, дать определение терминов «баг», «тест-план», «тест-кейс», «чек-лист». Затем ему предложат рассмотреть предоставленное приложение и разработать для него тест-план, тест-кейс и чек-лист, а также найти допущенные ошибки и внести их в баг-репорты.
Заработная плата
Зарплата опытного инженера по качеству сравнима с оплатой труда программиста. На ее размер влияют регион и масштаб компании, где он работает. Разумеется, специалист, трудоустроенный в столичной крупной IT-компании, будет получать больше, чем в маленькой фирме где-то на периферии. В среднем в Москве QA-инженер может зарабатывать от 60 до 180 тысяч рублей в месяц. По России в целом ему предлагают от 35 до 160 тысяч рублей.
По статистике, зарплата специалистов, которые работают по гибкому офисному графику и удаленно, гораздо выше, чем тестировщиков, занятых строго по 8 часов 5 дней в неделю. А вот фрилансерам, периодически меняющим работодателей, удается зарабатывать менее 45 тысяч рублей в месяц.
Тестировщик – каким он должен быть?
Если вы планируете стать тестировщиком, то вот список личных качеств, который должен хотя бы частично характеризовать вас:
Усидчивость. Найти ошибки в программе не всегда просто, иногда требуется приложить немало усилий, чтобы наткнуться на то, что «сломает» программу. Профессиональный тестировщик всегда знает, что не бывает программ без ошибок, а бывают лишь те, которые были плохо продиагностированы.
Критическое мышление
Важно уметь анализировать полученные данные и получать из них необходимую информацию.
Максимальная внимательность
Следует уделять внимание всем деталям, даже самым неочевидным.
Умение работать в команде. Взаимодействие в команде – один из важнейших навыков, которым должен обладать тестировщик
Потребуется постоянно быть на связи с дизайнером, разработчиками и другими специалистами.
Желание сделать продукт лучше
Следует не просто выполнять поставленную задачу, но и хотеть усовершенствовать продукт компании. Без заинтересованности в получении «идеального» продукта не может идти никакой речи о стабильности и популярности продукта, не говоря уже о его тестировании.
Умение подробно составлять описание тестов. Если вы нашли все проблемы программы, то это отлично, но стоит описать их максимально детально, чтобы в последующем у разработчиков не возникло вопросов.
Стремление стать лучше. Чтобы добиться успехов, следует быть в теме. Необходимо регулярно изучать техническую литературу, посещать различные форумы и постоянно совершенствоваться – только в таком случае можно говорить о высоком уровне тестировщика.
Самое главное – это, конечно же, гореть своим делом. Если вы просто хотите стать тестировщиком, потому что там много платят, то это ни к чему не приведет.
Есть ли у тебя какой-нибудь персональный лайфхак, который бы упростил жизнь всем QA-автоматизаторам?
АЛЕКСЕЙ ПОБОЛЬ: Если я нахожу какое-то интересное решение, то сразу документирую это на внутреннем портале, чтобы другие члены команды тратили меньше времени в будущем
ЕКАТЕРИНА ЖУКОВСКАЯ: Сложно назвать это лайфхаком, но могу сказать, что нужно уметь писать не только красивый и правильный по структуре код, но также и уметь создавать, так называемые, “костыли”. Это действительно упростит жизнь и сократит время на решение какой-то нетривиальной проблемы, где красота кода ничем не помогает, ведь это уже будет критическое мышление, основанное на опыте.
А самое главное – не нужно бояться, что ты чего-то не знаешь, главное желание и усердие. Мы учимся всю жизнь – “Чем больше мы знаем, тем ещё больше нам придётся узнать”.
«Тестирование ПО: подготовка к сертификации ISTQB Foundation» от Stepik
Длительность: 32 урока.
Формат обучения: изучение теории, выполнение домашних заданий и тестов для самопроверки.
Программа обучения: за основу взята программа «Сертифицированный тестировщик ПО. Базовый уровень» от ISTQB, только здесь информация представлена в сжатом виде. Материал содержит реальные примеры тестов с сертифицированных экзаменов. Курс подойдёт слушателям, которые хотя бы поверхностно разбираются в принципах разработки ПО. Большим плюсом будет опыт работы тестировщиком.
Какие знания и навыки получите:
- Понимание специфики и необходимости тестирования.
- 7 базовых принципов тестирования.
- Модели разработки ПО.
- Типы и уровни тестирования.
- Выбор методов тестирования.
- Планирование, организация, оценка тестирования.
- Применение инструментов для тестирования.
Плюсы:
- Небольшой объём информации.
- Качественная теоретическая база.
- Структурированные уроки.
- Полезные ссылки на дополнительный материал.
- Много практических упражнений.
Минусы:
Жизненный цикл тестирования программного обеспечения
Независимо от того, какую методологию вы используете, от вас всегда ожидается соблюдение определенного жизненного цикла тестирования. Жизненный цикл тестирования программного обеспечения помогает вам сосредоточиться на требованиях к продукту и разработке функций по очереди.
Давайте подробнее рассмотрим каждый из этих 6 шагов:
Анализ требований
Вы и ваша команда разработчиков встречаетесь с группами по продукту и маркетингу, чтобы обсудить конечные требования и особенности продукта. Для каждого требования группа проводит мозговой штурм по проверяемой спецификации, в которой будет указано, выполнено ли это требование.
Эти спецификации могут быть такими, как «время выполнения должно быть ниже X» или «клиенты должны иметь возможность легко управлять пользовательским интерфейсом». Вы будете использовать эти спецификации для последующих шагов.
План тестирования
На этом этапе вы и ваша команда разработчиков обдумываете особенности разработки теста. Вот некоторые общие моменты: «Какие ресурсы нам понадобятся?», «Какие количественные показатели мы можем использовать для проверки наших требований?» и «каковы исходные факторы риска, которые могут повлиять на результаты тестирования?».
Наиболее важным аспектом этого шага является сохранение конкретных показателей тестирования / случаев и их соответствия спецификациям продукта.
Разработка тестового случая
На этом этапе вы создадите тестовый пример или набор тестов, которые проверят, что целевое требование было выполнено. Для общего тестирования вы можете использовать процесс функционального тестирования или для более конкретных требований вы можете выбрать нефункциональный тест, такой как тест удобства использования.
Обычно это делается путем перевода спецификации, найденной на шаге 1, в код. Полезно разделить большие спецификации на несколько подусловий, чтобы вы могли видеть, на каком этапе процесса происходит сбой программы.
Вы и команда разработчиков также разделите тестовые примеры на категории автоматического и ручного тестирования в зависимости от их метрики и сложности.
Настройка тестовой среды
На этом этапе вы создадите свою тестовую среду. Большинство продуктов выпускается на нескольких платформах, а это значит, что вам придется создать как минимум одну среду для каждой платформы. В основном это делается с помощью фреймворков тестирования и нескольких виртуальных машин.
Здесь вы также создадите тестовые входные данные, которые будут создавать согласованные выходные данные при запуске программы. Хорошие входные данные для тестирования охватывают весь спектр сценариев использования и приводят к тому же результату при повторном запуске.
Выполнение теста
На этом этапе вы и ваша команда выполните тест и запишите все выбранные показатели. Большинство команд будут запускать тесты несколько раз, чтобы получить несколько сопоставимых точек данных. Отметьте любые критические или некритические программные дефекты, которые будут пересмотрены в следующем цикле разработки.
Вы также можете осознавать, что ваши метрики не содержат всех необходимых данных. Это хорошее время для переоценки выбранных вами показателей для будущих тестов.
Завершение тестового набора и анализ
Этот шаг посвящен получению надежных, подлежащих отчетности результатов тестов. Большинство компаний попросят вас написать ежедневный или еженедельный отчет, в котором резюмируется, как прошел каждый тест и какие изменения будут внесены в результате теста.
Отсюда вы можете:
- Измените тест и повторите его, чтобы получить дополнительную информацию (различные метрики, усовершенствованные среды тестирования и т. Д.).
- Вернуться к разработке решений для продукта, используя результаты тестирования (оптимизировать для выполнения, повысить масштабируемость и т. Д.)
Используя методы гибкого тестирования, вы завершите этот цикл тестирования до того, как создадите код продукта, а также после него. Это позволяет ускорить разработку, поскольку при разработке продукта вы учитываете спецификации тестов.
Особенности профессии
QA-инженер занимается обеспечением качества, поэтому в типичный список обязанностей QA входит:
- анализ требований;
- комуникация с менеджерами и бизнес-аналитиками;
- оценка рисков;
- планирование процесса тестирования;
- работа с тестовой документацией;
- тестирование продукта;
- документирование дефектов;
- коммуникация по найденым проблемам и их исправлению;
- повторное тестирование после исправлений;
- анализ тестирования, проблемных ситуаций и причин возникновения дефектов;
- оптимизация процесса на основе проведенного анализа.
Словом, инженер по обеспечению качества (QA) – это специалист, который помогает команде разработчиков выпустить качественный продукт как можно быстрее и с минимум финансовых затрат.
Заключение
Независимо от того, какие подходы или методы использует компания, конечная цель всегда одна — предоставить клиентам продукт высочайшего качества. Хорошо налаженный QA процесс помогает снизить затраты на разработку и улучшить качество программного обеспечения. И вы можете внести свой вклад в этот процесс.
И вы сможете внести свой вклад в этот процесс. Как видите, придётся многому научиться. Но когда вы понимаете основные концепции, методы и инструменты, разобраться во всём этом не так уж сложно.
Наши краткосрочные курсы помогают таким же людям, как вы, преодолеть свои первые страхи и начать строить новую карьеру в качестве тестировщика. Изучение основ под чутким руководством наших опытных преподавателей — это вопрос нескольких недель.
Заключение
Профессия тестировщика – это отличный выбор для тех, кто хочет уйти в IT-сферу. Глубоких знаний на начальном этапе не потребуется, но нужно будет много учиться.
А вот если вы планируете стать QA-инженером, то здесь базовых знаний не хватит. Потребуется сначала поработать тестировщиком, чтобы полностью углубиться в сферу QA.
Гостем нового выпуска подкаста «Быть» стал Ваня Морщагин, руководитель QA-направления в Timeweb. В видео вы узнаете, чем тестировщик отличается от QA-инженера, какие ветки развития есть в quality assurance в целом, нужен ли вуз и куда можно расти из QA. Послушать подкаст можно на Apple Podcasts, Яндекс.Музыка и Spotify.