Файл: Виды Тестирования Программного Обеспечения Все виды тестирования программного обеспечения.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 12.01.2024

Просмотров: 72

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Виды Тестирования Программного Обеспечения

Все виды тестирования программного обеспечения, в зависимости от преследуемых целей, можно условно разделить на следующие группы:

  1. Функциональные

  2. Нефункциональные

  3. Связанные с изменениями

Далее, мы постараемся более подробно рассказать о каждом отдельном виде тестирования, его назначении и использовании при тестировании программного обеспечения.

Функциональные виды тестирования

Функциональные тесты базируются на функциях и особенностях, а также взаимодействии с другими системами, и могут быть представлены на всех уровнях тестированиякомпонентном или модульном (Component/Unit testing)интеграционном (Integration testing)системном (System testing) и приемочном (Acceptance testing). Функциональные виды тестирования рассматривают внешнее поведение системы. Далее перечислены одни из самых распространенных видов функциональных тестов:

  • Функциональное тестирование (Functional testing)

  • Тестирование безопасности (Security and Access Control Testing)

  • Тестирование взаимодействия (Interoperability Testing)

Нефункциональные виды тестирования

Нефункциональное тестирование описывает тесты, необходимые для определения характеристик программного обеспечения, которые могут быть измерены различными величинами. В целом, это тестирование того, "Как" система работает. Далее перечислены основные виды нефункциональных тестов:

  • Все виды тестирования производительности:

    • нагрузочное тестирование (Performance and Load Testing)

    • стрессовое тестирование (Stress Testing)

    • тестирование стабильности или надежности (Stability / Reliability Testing)

    • объемное тестирование (Volume Testing)

  • Тестирование установки (Installation testing)

  • Тестирование удобства пользования (Usability Testing)

  • Тестирование на отказ и восстановление (Failover and Recovery Testing)

  • Конфигурационное тестирование (Configuration Testing)

  • Тестирование безопасности (Security and Access Control Testing)

Связанные с изменениями виды тестирования

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


  • Дымовое тестирование (Smoke Testing)

  • Регрессионное тестирование (Regression Testing)

  • Тестирование сборки (Build Verification Test)

  • Санитарное тестирование или проверка согласованности/исправности (Sanity Testing)


Как искать баги — исследовательские туры Уиттакера


На моем курсе уже на второй день перед студентами стоит задача “Найти в системе 4 бага и оформить в баг-трекере”. Времени мало, работы много. Возникает разумный вопрос: “А как их искать, эти баги??”

Мне понятен этот вопрос. На первой работе я тестировала игры на мобильных телефонах. Про классы эквивалентности и граничные значения знать не знала, ведать не ведала. Мой начальник показывал мне, как играть в игрушку, и давал наставления: “Прочитай текст в инструкции, обязательно дойди до конца игры и посмотри на текст поздравления (о, как часто там находились баги на маленьких экранчиках Siemens, куда слово “Congratulations” просто не влезало!).



Тестирование игр на мобильных телефонах, у каждого 
тестировщика на столе по несколько мобилок

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

Со временем накопился опыт. Я находила проблемные зоны сама и видела, что находят другие. Я понимала, где копать. Но этот опыт нельзя было применить на других проектах.

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

А потом я стала тестировать систему, которую мы поддерживали несколько лет. Я изучила ее вдоль и поперек и… перестала видеть баги. Я внимательно проходила знакомый до боли сценарий и не видела проблем. А потом открывала bash.org и быстро сворачивала, когда мимо шагал начальник. В этот момент я тупо смотрела туда, куда внимательно вглядывалась 5 минут назад. И находила ошибку! Ошибку, которую не заметила за час тестирования! Это называется “замыленный взгляд” — проблема, которая мешает неначинающим тестировщикам находить баги.

Как сделать поиск багов систематическим? Джеймс Виттакер (James A. Whittaker) в книге “Exploratory Software testing” нашел выход и для новичков, и для экспертов.


Методика туров


Приложение — незнакомый город.

Тестировщик — турист.



Исследуйте ПО так, словно это — незнакомый город

У туриста мало времени, поэтому он выполняет конкретную задачу, ни на что другое не отвлекаясь. Он бегает по казино, или осматривает достопримечательности, или посещает деловой семинар. Что угодно, но что-то одно.

Как пользоваться методикой


Выбрать тур из списка ниже.

Изучить его цели.

Поставить таймер на 2 часа (час, полчаса).

Провести исследование системы строго по целям тура. Ни на что не отвлекаясь, только “миссия” тура.

При необходимости повторить.

В каждом туре есть описание автора (низкий поклон Джеймсу за разрешение перевода и публикации) в вольном переводе + собственные примеры. Для примеров взят сайт Дадаты — https://dadata.ru.

Отправляемся в путь!



Компас — символ книги “Exploratory Software testing”.

Туры по деловому центру, Tours of the Business District


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

При исследовании ПО все наоборот. Деловой центр — это те функции, ради которых пользователи покупают и используют приложение. Это те killer-feature, которые описывают маркетологи, и которые упомянет любой из ваших пользователей при опросе, зачем им ваше приложение.

Тур по деловому центру фокусирует внимание на главных частях вашего приложения и показывает сценарии их использования вашими клиентами.

Тур по путеводителю. The Guidebook Tour

Денежный тур. The Money Tour

Тур по ориентирам. The Landmark Tour

Интеллектуальный тур, The Intellectual Tour

The FedEx Tour

Внеурочный тур, The After-Hour Tour

Тур сборщика мусора, The Garbage Collector Tour

Туры по историческим районам, Tours Through the Historical District


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

В ПО исторические районы могут быть также слабо соединены, как в Бостоне или сосредоточены в одном месте, как в Кёльне. Исторические районы в ПО представляют собой:


  • унаследованный код (legacy code);

  • функции, созданные в предыдущих версиях;

  • исправления багов.


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

Туры по историческим районам проверяют старую функциональность и исправления ошибок.

Тур по плохому району, The Bad-Neighborhood Tour


Музейный тур, The Museum Tour

Тур предыдущей версии, The Prior Version Tour

Туры по развлекательным районам, Tours Through the Entertainment District


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

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

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

Тур актера второго плана, The Supporting Actor Tour

Тур глухого переулка. The Back Alley Tour

Тур полуночника. The All-Nighter Tour





Туры по туристическим районам, Tours Through the Tourist District


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

Туры по туристическим районам имеют несколько разновидностей. Это и короткие забеги для покупки сувениров, аналог кратких тест-кейсов для тестирования специфичных функций. Это и длинные поездки для посещения списка мест, которые хочется увидеть. Эти туры не о том, как заставить приложение работать, они о том, как посетить функциональность быстро… только чтобы сказать “мы тут были”!

ТУР КОЛЛЕКЦИОНЕРА. THE COLLECTOR`S TOUR


Тур одинокого бизнесмена, The Lonely Businessman Tour




Тур супермодели, The Supermodel Tour


The TOGOF Tour

Тур шотландского паба, The Scottish Pub Tour





Туры по отельным районам, Tours Through the Hotel District


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

ТУР, ОТМЕНЕННЫЙ ИЗ-ЗА ДОЖДЯ. THE RAINED-OUT TOUR

ТУР ДОМОСЕДА, THE COUCH POTATO TOUR






Туры по захудалым районам, Tours Through the Seedy District


Это непривлекательные места, о которых расскажет редкий путеводитель. Они полны мошенников и сомнительных личностей, и лучше обходить их стороной. Тем не менее, они привлекают определенный класс туристов.

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

ТУР САБОТАЖНИКА. THE SABOTEUR TOUR


Тур несоциального человека. The Antisocial Tour


Обсессивно-компульсивный тур, или тур невротика. The Obsessive-Compulsive Tour




Большое спасибо Джеймсу Виттакеру (James Whittaker aka @docjamesw) за разрешение на перевод и публикацию туров. 


Здесь описана только одна глава из его книги “Exploratory Software testing”, рекомендую прочитать всю.


Большое спасибо Павлу Абдюшеву aka @ChipQA  за помощь в переводе и редактуру текста.


Статья написана в помощь моим студентам, но будет полезна всем тестировщикам!

Следите за обновлениями ссылок в посте

Тестирование безопасности или Security and Access Control Testing


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

Принципы безопасности программного обеспечения