Тестирование, основанное на рисках (risk-based testing): Подход к тестированию с целью минимизирования уровня рисков продукта и информирования заинтересованных лиц о текущем состоянии рисков с начальных стадий проекта. Подразумевает под собой управление процессом тестирования, исходя из идентифицированных рисков продукта и использования уровней риска. (ISTQB)
Риск - это возникновение неопределенного события, которое положительно или отрицательно влияет на измеримые критерии успеха проекта. Это могут быть события, которые произошли в прошлом или текущие события, или что-то, что может произойти в будущем. Эти неопределенные события могут повлиять на стоимость, бизнес, технические и качественные цели проекта. Позитивные риски упоминаются как возможности и помощь в устойчивости бизнеса. Например, инвестирование в новый проект, изменение бизнес-процессов, разработка новых продуктов. Отрицательные риски называются угрозами, и для успеха проекта должны быть реализованы рекомендации по их минимизации или устранению.
Тестирование на основе рисков помогает обнаруживать наиболее важные и критические ошибки на ранней стадии. Это тип тестирования, основанный на вероятности риска. Он включает в себя оценку риска на основе сложности, критичности бизнеса, частоты использования, видимых областей, областей, подверженных дефектам, и т. д. Он включает определение приоритетов тестирования модулей и функций тестируемого приложения на основе влияния и вероятности отказов. Если вовремя не выявить какой-либо риск, это может помешать завершению проекта. Самым первым шагом является определение рисков, а затем их оценка, т.е. определение приоритетов, а затем обработка рисков. После того, как риски идентифицированы, необходимо оценить риск, чтобы определить риски с точки зрения их воздействия, то есть того, какой ущерб он может нанести.
Приоритет любого риска зависит от вероятности возникновения и его воздействия на продукт, то есть от того, насколько серьезным является воздействие: Priority = Probability * Severity.
- Управление рисками (Risk Management) должно начинаться на ранней стадии жизненного цикла, чтобы с рисками можно было справиться на ранней стадии. Категории рисков:
- Project Risks: бюджет, ресурсы, график, проблемы, связанные с клиентами и т. д.
- Technical Risks: Технический риск включает риски на этапах проектирования, внедрения, тестирования и разработки. Большинство технических рисков возникает либо на этапе требований, либо во время кодирования, поскольку неясность требований может привести к серьезным рискам во время разработки. Во-вторых, на этапе разработки, если разработчики недостаточно хорошо знакомы с Продуктом, это также может привести к серьезным рискам.
- Business Risks: Бизнес-риски включают проблемы с бюджетом и созданием проекта, который не соответствует требованиям заказчика, потерю клиента.
- Оценка рисков (Risk Assessment): риск оценивается на основе того, насколько серьезным является воздействие.
- Контроль рисков (Risk Control): Риском можно управлять с помощью трех стратегий:
- Предотвращение риска (Risk Avoidance): избежание риска - это избежание риска проекта с согласия клиента. Например. Чтобы избежать риска задержки реализации проекта из-за нехватки ресурсов, ресурсы можно оставить на скамейке запасных для замены, если какой-либо ресурс уйдет в отпуск. Объем работ можно сократить, чтобы избежать рисковУ
- Снижение риска (Risk Reduction): снижение риска включает в себя планирование управления рисками и минимизации их последствий. Например. Чтобы снизить риск, для реализации Проекта следует использовать инкрементальный подход;
- Передача риска (Risk Transfer): эта стратегия включает покупку страховки или любого компонента, разработанного третьей стороной, чтобы избежать возникновения рисков;
Процесс Risk-based Testing:
Риск идентифицируется и анализируется, т. е. рассчитывается влияние (impact) и серьезность (severity) риска, и принимаются меры в соответствии с приоритетом риска. Как только приоритет определен, начинается тестирование, т. е. создаются объем (test scope) и план тестирования, а затем выполняется тесты.
Доп. материал:
- ГОСТ Р 56920-2016/ISO/IEC/IEEE 29119-1:2013 Часть 1: “Понятия и определения” 5.4 Тестирование на базе рисков
- Stages of Risk Management Encountered by the Software Testing Managers
- Risk Based Testing: Approach, Matrix, Process & Examples
- Leadership in test: risk-based testing
- Как управлять объемами тестирования на основе рисков
- Что такое риск-тестирование?