Навіщо потрібна стратегія тестування і що має в ній міститися
Стратегія тестування - відносно невеликий статичний документ, який передує плану тестування. Перш ніж писати об'ємний і детальний план, варто формалізувати деякі базові підходи до тестування і переконатися, що всі зацікавлені особи розуміють однаково, що і як буде тестуватися.Отже, що варто описати в стратегії тестування?
- Які види тестування будуть проводитися? Чи планується тестування продуктивності, юзабіліті, конфигурационное і т.д. Чи плануються статичні види тестування, наприклад, рецензування (peer review) вимог тестувальниками? Чи збираєтеся ви виділити час на дослідне тестування, і якщо так, то скільки в процентному відношенні?
- Корисно перерахувати всі види тестових активностей, які згодом увійдуть в ваш план-графік. Наприклад, дизайн тестів, підготовку тестового середовища і так далі. Навіщо? Щоб ні про що не забути при складанні плану.
- Що буде служити основою тестів (test basis)? З чого ви збираєтеся виводити тест-кейси? Це можуть бути вимоги, сценарії використання, якісь зовнішні стандарти.
- Які техніки ви збираєтеся використовувати для створення тест-кейсів?
- Наскільки детальними повинні бути тест-кейси? Занадто детальні тест-кейси складно підтримувати в актуальному стані, а недостатньо детальні можуть викликати труднощі з відтворенням дефектів. Тут необхідний якийсь баланс, і бажано, щоб тест-кейси були досить однорідними. Описати на словах, наскільки докладними повинні бути тест-кейси, мабуть, важко, проте можна навести кілька прикладів з потрібним рівнем деталізації, на які зможуть орієнтуватися тест-дизайнери при розробці тест-кейсів.
- У стратегії тестування незайвим буде згадати і про критерії оцінки серйозності і пріоритету дефектів. Оцінка серйозності дефекту часто викликає суперечки, якщо такі критерії відсутні. Краще формалізувати, як ми будемо оцінювати важливість дефекту і пріоритет його виправлення, і місце таких критеріїв - саме в стратегії тестування.
- Як специфіка об'єкта тестування вплине на процес тестування? Можливо, немає UI, стало бути, необхідні тестові драйвери, розробку яких потрібно окремо запланувати, або ж необхідна якась особлива тестова середу.
- Які критерії початку і завершення тестування? Критерії початку тестування зазвичай включають готовність необхідного оточення і успішне проходження попереднього рівня тестування (наприклад, успішна прогін Смоук-тестів є умовою початку системного тестування). Критерії завершення тестування залежать від обраних вами метрик, це може бути відсоток виконаних тестів, кількість невиправлених дефектів різного ступеня серйозності або якісь інші показники. У будь-якому випадку, з цим варто визначитися.
- Які види документації ви плануєте створювати? Тут важливо розуміти, служать ці документи вашим інструментом для внутрішніх потреб або ж ви розглядаєте їх як продукт, який входить в поставку.