Введение
Требования к тестированию — очень тонкая часть дополнительных требований. Данные требования определяют как должно обеспечиваться, планироваться, готовиться и выполняться тестирования. Кто непосредственно выполняет тестирование и какие требования к исполнителям.
Когда тестирование важно
Важность требований к тестированию возрастает под действием следующих факторов:
- Критичность ошибок для бизнеса — чем дороже обойдется ошибка в ПО для бизнеса тем важнее тестирование
- Новизна технологий — чем новее технологии, чем меньше их промышленное использование тем важнее тестирование
- Сложность решения — чем выше сложность тем важнее качественное тестирование
- Масштаб использования — чем больше пользователей может использовать решение, чем шире географический охват, чем больше возможных пиков в нагрузках — тем важнее тестирование
- Уровень зрелости команды — если вы экономите на команде разработки – у вас растет риск качества кода. Чем ниже качество команды разработки тем важнее тестирование
- Качество требований — тестирование не является заменой плохо подготовленным требованиям. Тестирование может помочь компенсировать плохо выполненный анализ более качественной проработкой тестовых сценариев и планированием тестирования.
Минимальный набор требований к тестированию
В самом простом случае вы должны определиться с тем:
- Как вы видите тестирование — какие типы тестирования вы считаете важным в рамках данного решения. Например для простых корпоративных решений часто нет необходимости в большинстве видов тестирования (нагрузочное, usability, проникновение)
- Кто будет выполнять тестирование — типичная ошибка заключается в том что бизнес заказчик подписывается проводить тестирования сам. А потом оказывается что заказчик не готов принимать “сырое” решение и требует чтобы разработчики тестировали все сами.
- Чем должна подкрепляться работа тестировщика и какие результаты вы хотите видеть — например хотите ли вы видеть набор описанных тестовых сценариев
- Какое покрытие тестами вы ожидаете — только важный функционал, только отдельную часть решения или все
типичные ошибки
Что нужно помнить при продумывании требований к тестированию:
- Качество само собой разумеется и предполагается — увы нет.
- Качество требует не только качественной разработки, но и проверки качества.
- Все ошибаются.
- Чем дешевле команда тем выше риск того что качество работы будет хуже.
- Проверка качества — тестирование — требует времени, время стоит денег
- Разработчик сам протестирует — увы нет. Это шаблонная проблема родитель-ребенок. Создателю трудно критиковать свое же творения, создателю тяжело переключиться с формата создания на формат разрушения. Разработчики в большинстве своем не любят тестировать.
- Бизнес заказчик в большинстве случаев не умеет тестировать. Для того чтобы убедится в этом прочитайте перечень вопросов по сертификационному экзамену ICTQB
- У заказчика в большинстве случаев нет времени на полноценное тестирование. Часто тестировщик на проекте занимается задачами тестирования полный рабочий день. Очень странно предполагать что бизнес отдаст своих экспертов для тестирования — это как микроскопом гвозди забивать.
- Нужно все. Необходимость определенных видов тестирования определяется спецификой задачи, нужность относительна