admin 29 сентября 2017

QA engineer, с чего начать?

С чего начать джуниору? Что он должен знать, что уметь, где приобрести необходимые навыки и практику? Как начать построение карьеры в тестировании?


Что же такое QA?

QA (от англ. quality assurance) — обеспечение качества. QA - это довольно абстрактное понятие. Но в основном этот процесс имеет две цели:

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

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

Функциональное тестирование.

В большинстве случаев самое первое, с чем придется столкнуться QA Engineer'у это функциональное тестирование: написание тестов по задачам и прохождение этих тестов., прохождение уже написанных, апдейт, заведение багов и прочее. В этом случае QA Engineer - тестировщик. Для этого самое важное - хорошо работающая голова, умение читать задачи и задавать правильные вопросы: "А что если так? А если этак?".
В зависимости от технологии тестировщику могут понадобятся дополнительные специфические навыки. Web разработка, разработка мобильных приложений, ПО: в каждой технологии свои подводные камни.
Но, процесс обеспечения качества не заканчивается на функциональном тестировании, поэтому понятие QA шире, чем тестирование. Здесь мы уходим от банальных тестов по функциональным требованиям и переходим к анализу требований и документации (поиск узких мест в требованиях и реализации), юзабилити тестирование (поиск "косяков" в интерфейсах и функциональности), тестирование производительности и прочее.

Автоматизированное тестирование.

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

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

Что в итоге?

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

Что важно для тестировщика?

  • Способность и желание разбираться в том, как это (продукт\фича\пр) работает сейчас, и как это должно работать.
  • Так же стоит приготовиться много говорить "нет, так не пойдет" менеджерам и разработчикам.
  • Ну и вообще, смириться с тем, что другие стороны процесса очень часто готовы действовать в ущерб качеству.

Требования к джуниору.

  1. Представление о процессе разработки: этапы, когда нужно начинать тестировать и все такое.
  2. Представление о написании тестов: что представляет из себя тест-план, тест-сьют, тест-кейс, тест-степ, Definition of Done, ожидаемый результат и т.д.
  3. Представление о том, что такое дефект: Severity и Priority дефекты, какие бывают дефекты, из чего состоит описание дефекта, и т.д.
  4. Хотя бы общее представление о тест-дизайне: что это такое, зачем нужено, какие есть практики.
  5. Базовые навыки (SQL - селект, апдейт, работа с несколькими таблицами).

Дополнительную литературу, касающуюся всех этих навыков и технологий можно найти здесь: https://proglib.io/p/qa-books/

А ещё, конечно, нужно, чтобы человек умел думать. Будьте готовы к задачкам на логику и к задачкам типа "Есть окно с кнопкой, посылает запрос: напиши тесткейсы" или "Протестируй карандаш".

Комментарии

ВАКАНСИИ

Добавить вакансию
Разработчик C++
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ