Тестирование программного обеспечения

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

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

Quality Assurance (QA) - обеспечение качества является неотъемлемой частью производства, так как позволяет делать продукт конкурентоспособным на рынке. Согласитесь, когда вы видите качественную и некачественную вещь, предпочтение отдаете в пользу качественного продукта.

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

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

Основные этапы обеспечения качества:

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

Долгосрочное прогнозирование – любая идея, является началом нового проекта. Проект без планов и целей – не имеет права на существование. Речь идет не о том, что будет через 10 лет, как мы планируем покорить рынок Китая или Японии, когда нет ни одной строчки кода. Речь идет о том, какие риски могут возникнуть в процессе создания проекта и своевременное реагирование на возможные риски;

Планирование уровня качества – на данном этапе формируются требования к качеству. Запомните, данные требования на разных проектах у разных продуктах могут быть абсолютно разные;

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

Проектирование качества в процессе конструирования и разработки;

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

Пооперационный контроль в процессе производства – основная деятельность специалистов по контролю качества. Эта та самая деятельность по контролю тестирования;

Приемочный контроль – очень важная, сверхответственная процедура, на данном этапе делаются финальные тесты и принимается решение о выходе в продакшен;

Контроль качества изделия в условиях эксплуатации (после продажи) – речь идет о том, что после того, как продукт уже отдан пользователю, вам необходимо следить, чтобы данный продукт работал стабильно (как часы). Нельзя забывать о своих пользователях, которые пользуются данным продуктом. Эту процедуру обеспечиваются бета-тестеры. Многие геймеры даже не подозревают, о том, что являются бета-тестерами, например, таких игр как: Dota2, World of Tanks. На данном этапе тестирования реальным пользователям дают столкнуться с продуктом и опробовать его в реальных условиях;

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

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


Более детально и подробно о тестировании програмного обеспечения вы узнаете на нашем курсе "Тестирование программного обеспечения"!