Суббота, 28 Декабрь 2013 17:04

Тестировщик программного обеспечения: в поисках ошибок

Оцените материал
(0 голосов)

Тестировщик программного обеспечения: в поисках ошибокНа форумах тестировщики ПО называют себя невоспетыми героями. Сравнение точное: все заслуги за создание программы приписываются разработчику, в то время как тестировщик – специалист, который доводит сырой продукт до ума, остается в тени.

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

Что послужило толчком для появления новой профессии – тестировщик ПО? Все просто: постепенно в компаниях-разработчиках осознали, что ключевой составляющей успеха любого программного продукта является, в первую очередь, его качество. В результате, если еще несколько лет назад эта профессия считалась редкой и не очень востребованной, то сегодня спрос на тестировщиков на порядок превышает предложение (по некоторым оценкам, на одного соискателя приходится около 20 предложений от работодателей).

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

По следам программиста

Цели и задачи тестировщика умещаются в простую формулу – сделать программу лучше. Отлично передает смысл этой работы профессиональная шутка тестеров:

– Зачем нужны тестировщики?

– Чтобы программисту, гордо сказавшему «Это сделал я!», было от кого услышать: «Ну и посмотри, какую ерунду ты сделал!».

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

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

Найти и обезвредить

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

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

Мастер на все руки

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

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

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

Интересные статьи

На каком движке сделан сайт?

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

Как защищать программу?

Как защищать программу?

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

Пройдите обучение тестированию от qa-academy.ru и получите все необходимые основы этой профессии!

Banner sidebar

Вопрос дня

Какая из мобильных ОС лучше?

Популярные статьи

Компьютерный моддинг: водяное …

Компьютерный моддинг: водяное охлаждение устройства

В последнее время в атмосфере компьютерных моддеров огромную популярность получили системы водяного охлаждения для вычислительных устройств. Если рань...

Внешний дизайн компьютера: уни…

Внешний дизайн компьютера: уникальные елочные гирлянды

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