База знань
Тестова стратегія
У світі розробки програмного забезпечення неможливо перевірити абсолютно все. Обмеженість ресурсів та часу вимагає від команди чіткого розуміння: що саме, як, коли і наскільки глибоко ми будемо тестувати. Саме на ці питання відповідає тестова стратегія (Test Strategy).
Згідно з міжнародним глосарієм ISTQB, тестова стратегія — це опис того, як саме буде проводитися тестування для досягнення цілей тестування за заданих умов. Вона визначає загальний обсяг, підхід та ресурси для тестування системи або продукту.
Якщо звернутися до міжнародних стандартів, сучасним орієнтиром є ISO/IEC/IEEE 29119 (в Україні адаптований як ДСТУ ISO/IEC/IEEE 29119). Цей стандарт чітко розділяє тестову стратегію на два рівні:
Документ, який описує загальні правила тестування для всіх проєктів у межах компанії. Наприклад, організація може визначити, що:
Деталізований підхід до тестування конкретного проєкту, який зазвичай є частиною тест-плану.
У часи використання стандартів ГОСТ 19 та ГОСТ 34 (які іноді досі зустрічаються в державному секторі) аналогом тестової стратегії та тест-плану був документ «Программа и методика испытаний».
Він містив:
Сучасна IT-індустрія переважно використовує гнучкі міжнародні стандарти ISTQB та ISO.
Щоб уникнути плутанини між документами, стандарт ISO/IEC/IEEE 29119 пропонує чітку ієрархію.
Документ найвищого рівня, який описує мету, принципи та цілі тестування мовою бізнесу.
Відповідає на питання: «Чому ми тестуємо?»
Випливає з політики і визначає загальні правила тестування в компанії.
Відповідає на питання: «Як ми тестуємо в нашій організації?»
Документ конкретного проєкту, який описує:
Тестовий підхід (Test Approach) — це спосіб реалізації тестування на конкретному проєкті. Саме він визначає рівні тестування, типи тестування та техніки тест-дизайну.
Коли тест-менеджер формує стратегію для конкретного проєкту, він аналізує контекст продукту, ризики, технічні обмеження та вимоги бізнесу.
Зазвичай тестова стратегія містить такі компоненти.
На яких етапах перевіряється продукт:
Які характеристики якості перевіряються:
Методи створення тестів:
Визначається, які перевірки виконуються:
Наприклад, автоматизація часто використовується для регресійного тестування.
Entry Criteria — умови, за яких тестування можна починати.
Наприклад:
Exit Criteria — умови завершення тестування. Наприклад:
Стандарти ISTQB та ISO підкреслюють важливий принцип: неможливо протестувати абсолютно все.
Саме тому сучасна тестова стратегія базується на аналізі ризиків (Risk-Based Testing).
Ризик — це потенційна проблема, яка оцінюється за двома параметрами:
Чим вищий ризик, тим:
Наприклад:
Різні продукти потребують кардинально різних тестових стратегій.
Контекст і ризики
Тестовий підхід
Автоматизація та документація
Контекст і ризики
Тестовий підхід
Автоматизація
Тестова стратегія — це інтелектуальний план розподілу ресурсів тестування для досягнення максимальної якості продукту.
Відповідно до стандартів ISTQB та ISO/IEC/IEEE 29119, вона:
Якщо ти хочеш глибше розібратися у тестуванні програмного забезпечення, техніках тест-дизайну та стандартах ISTQB, приєднуйся до навчання в QALight. Наші курси допоможуть отримати практичні навички тестування та підготуватися до роботи в реальних IT-проєктах.