Что делают тестировщики (QA инженеры)

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

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

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

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

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

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

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

Итого, чем занимается тестировщик на работе:

  1. Проверяет, что программа соответствует требованиям заказчика, здравому смыслу, удобна и безопасна в использовании.
  2. Находит ошибки, сообщает о них, а после того, как ошибки исправлены, проверяет снова – не поломалось ли при исправлении что-то другое.
  3. Знает программное обеспечение, его историю, слабые и сильные стороны, а также ближайшие планы развития.
  4. Предсказывает поведение пользователя (тестировщик немного оракул, хотя часто мои коллеги от этого открещиваются).
  5. Участвует в разработке ПО начиная с этапа планирования – чтобы можно было заранее учесть потенциальные проблемы и избежать их.

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

Поделиться