Виды программного тестирования

Комментарии давал Артём, руководитель отдела тестировщиков в компании Flexis Group.

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

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

Артём, Flexis Group

Артём: "Основные виды - ручное и функциональное тестирование. Ручное – это когда тестировщик эмулирует действия реального пользователя, и вручную пытается проверить всю эргономику, которая в системе реализована, в том числе выполняя стресс-тесты и проверяя на различных нестандартных кейсах поведение системы".

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

Артём: "Есть такой большой блок как автоматизированное тестирование. Оно, соответственно, исходя из названия, автоматизирует некоторые процессы, позволяя тестировщику руками не делать многие вещи, а системе воспроизводить его шаги. Это в одном из вариантов. В другом варианте происходит обмен данными с системой как бы «под капотом», и смотреть, как она себя поведет".

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

 

Oracle 10g, основы языка PL/SQL

м. Сокол, Октябрьское поле


Курс представляет собой введение в процедурный язык Oracle PL/SQL.

22880 е
 

Практикум по тест-дизайну


Онлайн-тренинг с домашними заданиями, 1,5 месяца занятий, 9 часов теории + много практики + постоянные консультации тренера в скайп-чате.

6500 е
 

Разработка тестов на Python с использованием Selenium 2.0


Если вы хотите считаться профессионалом в области автоматизации тестирования, строчка «я знаю Selenium» обязательно должна присутствовать в вашем резюме.

4300 е

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

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

Артём: "Страшный бич вообще всего процесса – это регрессионное тестирование. Оно очень важное, но его в какой-то момент начинают ненавидеть. Предположим, разработка программного продукта длилась два года, и после огромного количества тестов он, наконец-то, вышел на рынок. По истечению трех месяцев разработчики добавляют в продукт новый функционал, который отдельно протестировали. Но, помимо этого, нужно еще протестировать все, что было сделано за прошедшие два года, потому что прирост нового мог спровоцировать поломки в системе. В большинство случаев покрывается автотестами, но иногда необходимо все «пропихивать руками»".

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