| Заранее находим, что тестировать: модель ревью требований |
| 07.07.2026 00:00 |
|
Тестирование программного обеспечения — это не только поиск багов, но и их предотвращение. Случалось ли вам смотреть на требование и думать: «вроде всё нормально»? А затем, спустя несколько недель, наблюдать, как код по этому требованию превращается в баг-репорт, часы доработок или недовольство стейкхолдера? Это знакомо не только вам. Именно поэтому была создана модель ревью требований (Requirements Review Model, RRM): чтобы дать тестировщикам и командам простой и единый подход к ревью. Это помогает повышать качество ещё до того, как написана хоть одна строка кода. Модель была создана для сертификата Software Testing Essentials от Ministry of Testing (MoT), чтобы обучать тестировщиков-новичков ревью требований. В MoT решили, что будет полезно поделиться моделью со всеми, за пределами сертификата, и поддержать тестировщиков и их команды. Это соответствует их цели — развивать индустрию любыми позитивными способами. Поэтому и написана эта статья! Используя эту модель, можно научиться:
Будем честны, уточнение требования обычно занимает несколько минут, максимум час. А исправление бага, вызванного размытым требованием? Это уже совсем другая история. Часы? Дни? В любом случае это занимает больше времени, чем улучшение требования. В целом, чем позже в жизненном цикле разработки обнаруживаются баги, тем дороже их исправление. Модель ревью требований (RRM) в целом
Модель включает четыре шага:
Перед тем как углубляться в детали, разберитесь с контекстом. Какую проблему пытается решить это требование? Кого это затрагивает? Если непонятно «почему», невозможно глубоко тестировать или проявлять эмпатию к пользователям. Читайте требование, включив мышление тестировщика.
Теперь углубитесь. Чего не хватает? Что может пойти не так?
Возьмите эти вопросы, риски и идеи и преобразуйте их в сценарии и тесты.
Тестирование — это не одиночная работа. Используйте полученные выводы на практике:
Привлекайте разработчиков, продакт-менеджеров и стейкхолдеров, чтобы делиться идеями. Чем лучше вопросы, тем лучше требования. Применение модели ревью требований на практикеЭто не просто теория. Вот как это работает на практике: Понимание контекстаКакую проблему должно решить это требование? Кого оно затрагивает? Если непонятно «почему», тестирование идет вслепую. Пример: «Пользователи могут загружать аватар». Зачем нужна эта функция? Для персонализации? Для идентификации? Цель требования влияет на то, насколько строгими или гибкими должны быть правила. Поиск неоднозначностейРазмытые требования приводят к размытым реализациям. «Система должна позволять загружать изображения высокого качества». Хорошо. Но какое максимальное качество изображения? Какой максимальный размер файла? Оспаривайте расплывчатые формулировки до того, как они приведут к реальным проблемам. Думайте как пользователиПозитивный сценарий прост. А что с граничными случаями?
Ищите риски и ограниченияОцените, добавляет ли требование риск или снижает его. Проверьте, есть ли правила, которые нужно протестировать.
Проверяйте, сотрудничаяНе делайте предположений. Привлекайте разработчиков, продакт-менеджеров и стейкхолдеров. Чем лучше вопросы, тем лучше требования. Если в требовании сказано: «Пользователи могут загружать изображения размером до 5 МБ», обсудите это с командой:
Эта модель превращает размытые требования в хорошо протестированные фичи ещё до написания кода. Типичные сложности при ревью требований«На это нет времени». Нет времени — значит тем более нужно делать ревью. Уточнить требование сейчас быстрее, чем исправлять баг потом. «Требование выглядит нормально». Нормально для кого? Если два человека понимают требование по-разному, значит, оно непонятное. «Тестировщики не отвечают за требования». Верно, но именно тестировщики играют ключевую роль в выявлении рисков. Чёткие требования ведут к улучшению тестов. Лучше тесты — лучше покрытие. Лучшее покрытие предотвращает проблемы в продакшене. «Разработчики разберутся». Возможно. А возможно — сделают допущение, которое позже приведёт к проблеме. Зачем оставлять это на волю случая? ЗаключениеТестирование может начинаться до начала разработки. Не нужно ждать кода, чтобы начать тестировать. Модель ревью требований помогает:
В следующий раз, получив новое требование, попробуйте применить шаги этой модели и посмотрите, что удастся обнаружить. Чем раньше найдены проблемы, тем проще будет разработка (и тестирование). Дополнительная информация
|