Дякуємо за інтерес до наших розсилок!
Зовсім скоро потішимо вас цікавими та корисними листами!
Автори: Claire Reckless, Ady Stokes
Статтю вперше написала у 2016 році Claire Reckless, а нещодавно переглянув та оновив Ady Stokes. Оскільки розробка програмного забезпечення та тестування постійно розвиваються, було вирішено освіжити цю статтю — оновити форматування, посилання та додати сучасні lightweight testing поради.
Чи шукали ви колись в інтернеті «How to write a test plan»? Можна знайти безліч темплейтів, «must-have'ів», туторіалів і багато іншого. Способів створювати тест плани дуже багато, і речей, які варто врахувати, теж чимало. Легко заплутатися ще більше, ніж до початку пошуку.
Витрачати купу часу на створення об'ємної test documentation, яку ніхто не читає, — дуже прикро. Одна з проблем у тому, що менеджмент не завжди має час читати великі документи. Їм важливо бачити найголовніше.Джеймс Віттакер свого часу написав про 10 Minute Test Plan — описав челендж, який він кинув своїй команді: дістатися до цінності test плану якомога швидше. Спробуймо подивитися на це з іншого кута, але з подібною метою. Цього разу челендж — не час, а простір. Ми думатимемо про те, як скоротити test plan до одного аркуша.
Навіщо взагалі писати test plan?
Можна визначити просту множину objectives для нашого test plan. Щонайменше, він має дати читачам краще розуміння:● продукту або системи, що тестується (system under test)● як проводитиметься testing для feature або release● ризики та стратегій їх мітигації (mitigation strategies)
Test plan також може слугувати своєрідним «щитом». Якщо щось пішло не так, корисно переглянути документ на предмет пропущеного scope, недостатнього test coverage або щоб з'ясувати, який testing scope був узгоджений. У regulated або controlled середовищі це може бути обов'язковою частиною testing cycle, юридичною вимогою або required deliverable проєкту.
Чи дійсно потрібно писати plan?
Можливо, ви й не пишете test plan, щоб комусь щось передати. Ретельно продумані візуали можуть бути навіть ефективнішими за текст. Візьмімо mind map, наприклад (більше про mind map'и на MoT). Візуальне представлення — інтуїтивний спосіб пов'язувати й групувати концепції через асоціації, що відображає нелінійний спосіб генерування ідей мозком. Використання зображень посилює творче мислення та пам'ять і допомагає побачити gaps у вашому тест плані. Maaret Pyhäjärvi поділилася корисною інформацією про exploratory testing self-management: як використовувати нотатки для планування та управління тестуванням, включаючи інформацію про testing mission та charters.
Цілком можливо, що ваш проєкт взагалі не потребує test plan. Не створюйте план лише тому, що process або template так каже. Писати об'ємні звіти, які не корисні ні тестувальникам, ні комусь іншому, — марна трата часу. Іноді достатньо простого mission statement або mind map'ів із workflows. Робіть те, що найкраще відповідає бізнес-потребам.
Agile Manifesto проголошує: «Working software over comprehensive documentation.» Внаслідок переходу на agile-підхід багато організацій скоротили кількість документації у рамках development-проєкту. З огляду на це — створюйте test plan лише тоді, коли це справді необхідно або коли це найпростіший спосіб комунікувати testing efforts за межами development-організації.
Чому one-page test plan може підійти вам — і чому може не підійти
Обмежений час менеджменту
Якщо дати зайнятому менеджеру багатосторінковий документ, насичений інформацією, — він, найімовірніше, не знайде часу його прочитати. Натомість за короткий документ із чітким, лаконічним поглядом на planned testing для проєкту він подякує і, можливо, таки прочитає.
Швидше писати
One-page test plan (не завжди, але зазвичай) займе менше часу, ніж довший. Це дає більше часу на інші задачі та активності тестування.
Поради щодо стислості
Обмежений простір означає, що в test plan влізе не все. Це змусить вас подумати, що дійсно потрібно включити, а що можна прибрати. Якщо ви зазвичай пишете довші test plan документи і хочете спробувати one-page версію — поговоріть із тими, хто читатиме план, і зберіть інформацію про те, що їм абсолютно необхідно. Якщо список все одно виходить довгим — виберіть два-три ключових пункти для побудови плану, а додаткові додавайте за можливості. Як альтернатива — подумайте, які формати допоможуть вмістити потрібну інформацію.
Коли one-pager не підійде
Важливо знати, коли one-page test plan просто не спрацює для проєкту. Якщо є речі, які необхідно включити з бізнес-міркувань — включайте. Якщо test plan потребує переліку всіх тест-кейсів — заощадьте місце, використовуючи лінки на інші документи або інструменти для test case management, які використовує проєкт. Мета — підсумувати testing efforts. Якщо стейкхолдери хочуть більше інформації — лінки усередині test plan вирішать це без зайвого простору та безладу.
Навіть якщо one-page plan абсолютно нереалістичний — це чудова можливість свіжим поглядом подивитися на вже наявні test plans й запитати себе: чи є речі, які можна зробити інакше? Чи є розділи, які насправді не потрібні? Наскільки глибоко потрібно деталізувати на цьому етапі або в цьому плані?
Ідеї щодо представлення test plan
Можливо, доведеться проявити креативність у тому, як подати ваш one-pager. Можна скористатися шаблоном, якщо він підходить — але переконайтеся, що всі його розділи дійсно необхідні та релевантні для вашого проєкту. Не витрачайте час на написання чогось лише тому, що template так вимагає.
Розгляньте такі формати:
Документи (Word, Google тощо)
Перевірена класика. Lisa Crispin і Janet Gregory мають гарний приклад one-page test plan у книзі «Agile Testing». Коротко: він містить інформацію про in scope, out of scope, resourcing, features, performance and load testing, UAT, infrastructure, assumptions та risks. Ці розділи можна змінювати відповідно до вашого проєкту. Під кожним — лише два-три рядки, рівно стільки, щоб дати overview того, що буде зроблено.
Dashboard format
Цей спосіб дає читачу birds-eye view test plan'у. Використовуйте кольори та стилі, щоб привернути увагу до різних зон, забезпечуючи гарний контраст. Цей формат також добре створюється за допомогою діджитал-інструментів, як-от Miro.
Mike Talks розробив власний test plan dashboard для тестування окремих features.
Також чудова відправна точка — Usability Test Plan dashboard.
Mind maps
Ще один чудовий візуальний спосіб створити test plan на одному аркуші — і зовсім необов'язково обмежуватися форматом А4. Створіть node для кожної зони test plan'у і далі розвивайте. Хоча спокуса «розгулятися» з nodes велика, стежте, щоб їх надлишок не погіршив читабельність. Є чудовий приклад mind map у MindMeister для music app від Elizabeth Zagroba зі статті How to use mind maps to develop clarity with your software testing strategy. Якщо ваш plan містить переліки тестів — цей підхід теж може спрацювати.
Mind map також можна використати як попередній крок перед написанням плану — щоб накидати структуру. Спробуйте: XMind, Mindmup, MindMeister або Coggle.it.
Spreadsheets
Якщо у вас немає test management тулу і ви хочете, щоб test plan містив список тестів або сценаріїв, які плануєте запускати, — можна використовувати spreadsheets та pivot tables для відображення потрібної інформації.
Wiki-сторінки
Створіть сторінку для test plan та додайте посилання для різних розділів. Це суттєво спрощує створення reusable test plan content. Такий метод також добре підходить як колабораційний підхід, якщо потрібно залучення різних членів команди. Крім того, він може бути більш зручним та простішим в обслуговуванні порівняно з іншими варіантами.
Фізичні вайтборди
Чи вписується це в категорію «one-page»? Думаємо, що так. Якщо plan використовуватиме лише безпосередня команда — цього може бути цілком достатньо для комунікації. Ніяких формальних документів взагалі не потрібно!
Whiteboard — один із найпростіших способів створити test plan, до того ж швидкий і недорогий в оновленні. Можна зробити фото для довідки, коли ви не поруч, або якщо є ризик, що хтось може його стерти.
Онлайн вайтборди та kanban дошки
Онлайн project management інструменти дозволяють створювати board'и з усіма задачами та стовпці для кожного статусу. Щось подібне ви, мабуть, уже використовуєте для управління agile-проєктами.
Trello board
У Trello створіть дошку для проєкту або функції, що тестується, та картку для кожного елемента у test plan. Можна додавати дедлайни для кожного пункту, стільки деталей, скільки потрібно, посилання на зовнішні ресурси, а також коментарі. Призначайте їх людям і переміщуйте по дошці в міру виконання до завершення.
Яким би не був формат вашого плану — подумайте, що буде найкориснішим для вас, вашої команди та тих, для кого ви пишете.
Організуйте one-page test plan лише з найважливішим контентом. Наступний список може стати відправною точкою:● The product / feature under test● What is in scope / out of scope● Risks● Assumptions● Tools● Environments● Resources● Estimates
Для кожного пункту, який ви вирішуєте додати, запитайте себе: «Чи потрібно це читачеві?», «Чи важлива ця інформація?».Крім того, як уже згадувалося, запитайте майбутніх читачів: що вони хочуть бачити в плані? Не потрапляйте у пастку включення чогось лише тому, що так завжди робилося.
Якщо щось не вміщується — можна додати посилання на зовнішній документ або ресурс, наприклад:● Test management tool● Test charters● Design documents● Risk register● List of assumptions● Gantt chart showing timelines and resourcing● Links to research and prototypes● UAT documentation● Infrastructure documentation● Related test plans for specific types of testing, for example, performance and security
Розуміння того, хто є ццільовою аудиторією і як саме вони використовуватимуть test plan, допоможе визначити пріоритети вмісту. Люди в різних ролях використовують plan по-різному:
Test team або test manager: можуть використовувати його як відправну точку для створення test charters, визначення environments та розподілу ресурсів.
Business stakeholders: план може впливати на інші відділи — наприклад, маркетинг може використовувати розклад для координації нової кампанії. Customer support або DevOps-команда можуть використовувати його для підготовки до релізу.
Вищий management: їм, мабуть, не потрібна деталізація всіх тестів, що будуть виконані. Overview того, що буде зроблено, уявлення про ризики та терміни тестування допоможуть їм оцінити, чи відповідає розробка їхньому product roadmap.
Юридичний відділ: хочуть бачити, що ваше тестування відповідає певним стандартам або законодавству.
Користувачі або клієнти: від вас може вимагатися комунікація test plan в рамках контрактних зобов'язань.
Під час комунікації з клієнтами:● Можливо, варто більше узагальнювати або спрощувати технічну мову, якщо вони не розуміють технічних термінів.● Зверніться до будь-яких консьорнів щодо тестування, які вони можуть мати.● Можливо, варто включити контактну інформацію, щоб вони мали можливість отримати додаткову інформацію або уточнення безпосередньо від першоджерела.● Пам'ятайте, що клієнти можуть не мати доступу до внутрішніх інструментів або документації. Це може обмежити те, на що ви можете посилатися у test plan. Для зовнішніх клієнтів може знадобитися спеціальний дозвіл лише на перегляд або посилання на зовнішні документи.
AI змінив правила гри
Важко підсумувати будь-які зміни в розробці програмного забезпечення та тестуванні, не беручи до уваги AI. Це стосується й розробки test cases, генерації даних, написання exploratory testing charters або створення test plan.
AI-інструменти заявляють, що вони можуть створювати фантастичні plan за секунди. Дайте список вимог — і бум, test plan готовий. Однак, як і будь-що автоматично згенероване AI, це потребує персонального контролю, аналізу та осмислення — щоб зрозуміти, чи справді отримано те, що потрібно. Так, AI послідовний у структурі та тоні. Йому можна давати шаблони, які він відтворить з ідеальним форматуванням. Не важливо, чи використовуєте ви user stories, API documentation, feature outlines або будь-який інший тип product language — він трансформує все це в test artefacts.
Використовувати AI-інструменти для генерації test plan documentation корисно, але застосовуйте їх мудро і не жертвуйте якістю заради швидкості.
Від Big Up-Front Documentation (BUFD) до розмов про якість
Відбувся поступовий відхід від об'ємних test planning документів епохи waterfall, на написання яких часто йшли місяці. Легші та більш доступні документи набрали популярності — адже світ розробки програмного забезпечення (майже) наздогнав Agile-революцію.
Оскільки software testers стали більш залученими до проєктів із самого початку розробки, це зумовило більше розмов про якість, що, своєю чергою, призвело до більш lightweight planning. Природа сучасної розробки програмного забезпечення робить здатність адаптуватися та реагувати на зміни життєво необхідною, і документація, що створюється паралельно з розробкою, також мала еволюціонувати.
Quality characteristics більше не є afterthought — і це добре
Ще не так давно security для програмного забезпечення вважалася єдиною ризикованою областю. Хоча це критично важлива зона, вона не єдина, про яку варто думати. Оскільки відмінний інструментарій став більш доступним, такі області тестування, як API, monitoring та performance, потрапляють у розмову раніше. Більш раннє врахування, як правило, призводить до кращих результатів з якості.
Про usability та accessibility теж говорять більше, але їм ще далеко до того, щоб стати запланованою testing area. European Accessibility Act, який набрав чинності у 2025 році, вже має певний вплив, але лише час покаже, наскільки значним він буде. Більше про це — у статті Empathy lessons for software testers: Preparing for the European Accessibility Act.
Test plans можуть бути чим завгодно: від запису в нотатнику до візуальних бордів і one-page документів. І так, вони все ще можуть бути багатосторінковими документами або навіть (так, я бачила це в реальному житті) 70-сторінковими PowerPoint шаблонами. Лише знання проєкту та його контекст визначить правильний вибір у конкретній ситуації.
Той, хто першим сказав «less is more», безперечно мав рацію. Запитайте себе: «Скільки додаткової та задокументованої інформації мені дійсно потрібно, щоб цей test plan мав цінність?» Можливо, виявиться, що менше — це справді більше, а ваша команда і тестування будуть ефективнішими з меншим test plan, наприклад у форматі one-page. Щасливого планування.
Джерела та посилання
● Ministry of Testing — The Software Testing Planning Checklist● Google Testing Blog — The 10 Minute Test Plan● The Agile Manifesto● Usability Focus — Usability Test Plan Dashboard● Agile Testing — Lisa Crispin and Janet Gregory● Theory behind Mind Maps● Empathy lessons for software testers: Preparing for the European Accessibility Act
Переклад: Certified Unicorns Team