Вхід до нового проєкту — хвилюючий і подекуди складний момент для всіх фахівців. Початківцям варто не розгубитися і не наробити помилок, а досвідченим спеціалістам — від самого початку грамотно й ефективно вибудовувати робочі процеси.
У цій статті я хочу зосередитись на етапах знайомства з проєктом з позиції QA Test Lead. Це може бути проєкт, що тільки стартує, або вже діючий. Тоді вас можуть долучити до команди як ще одного QA або на заміну іншому.
Важлива примітка: хоча це практичний путівник у новий проєкт, не варто сприймати його як обов’язкову до виконання інструкцію. Я ділюсь порадами виключно з власного досвіду. Можете за бажання використовувати їх у своїй роботі.
Стандартизованого визначення тест-ліда я не знайшов. Але можна зробити висновок, що це досить впевнена в собі людина 🙂
Якщо ж серйозно, то тест-лід відповідає за забезпечення якості на проєкті у широкому сенсі: за якість тестування, налагодження процесів, взаємодії команди та комунікації із замовником. Таке коло обов’язків потребує комплексного підходу до роботи.
Тому подальший сценарій розіб’ємо на декілька кроків.
Як правило, про новий проєкт тест-ліду повідомляє керівник. Тому й познайомитися з проєктом можна вже у розмові з ним. Почніть бесіду з обговорення очікувань керівництва:
Метою цієї розмови має стати виключення непорозумінь у майбутньому. Інакше існує ризик, що через певний час керівник скаже щось на кшталт: «Я думав, ти це зробиш», а ви відповісте із серії: «Мені здалося, що цим хтось інший займається…».
Наступна бесіда має бути із клієнтом. Як і в першому випадку, варто розділити розмову на кілька етапів:
Під час знайомства із замовником варто не просто вивідати якнайбільше інформації, а перш за все налагодити дружні стосунки.
Якщо проєкт не новий, то важливо перейняти досвід від минулого тест-ліда:
Не можу відмовити собі у задоволенні порівняти команду супергероїв дитинства із QA-командою.
Якщо ваш новий проєкт тільки стартує, то вам разом із HR треба сформувати свою команду мрії. Якщо ви потрапили до діючого проєкту, то познайомтеся з людьми — як скоупом, так і з кожним фахівцем окремо. Дізнайтеся, які в них кваліфікації, бажання і стан загалом. В ідеалі варто розподілити відповідальність по ролях.
Ваше завдання як тест-ліда — створити команду однодумців зі спільною метою. І тут лише QA-командою справа не обмежується.
Дізнайтесь якомога більше про всіх, із ким працюватимете: менеджери, програмісти, девопси, аналітики тощо. Обов’язково визначайте відповідальних за кожним напрямком, до кого і з якими питаннями зможете звертатись, із ким частіше будете спілкуватись. Не забудьте запропонувати колегам посильну допомогу і від себе.
Після знайомства з людьми потрібно оцінити наявні та необхідні ресурси на проєкті.
Я би виділив такі категорії:
Це знайомство з продуктом. Тут я би виділив три вектори:
Розібравшись із продуктом, спробуйте передбачити потенційні проблеми на проєкті:
Можливо, доведеться повернутися і переглянути описані вище інструменти, якщо ви щось забули чи пропустили. Адже багато видів тестування без специфічного ПЗ провести просто неможливо. Видів тестування існує безліч. Детально на кожному я не буду зупинятись — ви й самі маєте їх знати.
Обмежусь простим перерахуванням:
Окремо скажу про регресію. Це дуже необхідний вид тестування, з яким зазвичай виникає багато проблем. Регресійне тестування виконується наприкінці, тому на нього часто не вистачає часу та ресурсів. Тому продумайте аргументи на користь цього тестування і запропонуйте їх керівнику проєкту. Обсяг та цілі роботи мають бути виправданими.
Після видів тестування визначіться з браузерами. Зазвичай достатньо останніх версій Edge та Chrome. Але вам може не пощастити з продуктом для користувачів, які працюють на Windows XP. У такому разі треба проводити тести в IE 8 або більш екзотичних варіантах.
Також подумайте про операційні системи, навіть якщо маєте справу із вебзастосунком. Підготуйте все необхідне для тестів на різних ОС. Те саме стосується й мобільних операційних систем. Дізнайтеся, чи буде ваш застосунок працювати ще й на них. Тут головним орієнтиром має бути цільова аудиторія.
Переходимо до складання планів тестування. Ключові питання: хто, що та коли перевірятиме у продукті. Такі сценарії можуть прийняти один із форматів:
Ця частина работи найбільш об’ємна. Спершу зосередьтесь на вимогах. В ідеальному світі тест-лід на вході до проєкту отримує велику папку документації, яка включає:
Ми завжди сподіваємося, що доведеться мати справу з детально написаною специфікацією або деталізованими User Stories. Та ліпше одразу налаштувати себе на можливе виокремлення вимог з уривків листів, розмов та мітингів із замовником. У найгіршому випадку він взагалі обмежиться фразою на зразок: «Зробіть мені, як там». До цього теж варто бути готовими.
Коли у вас є більш-менш формалізовані вимоги, оцініть їх. Можливо, оцінку доведеться давати поетапно й кожну ітерацію оцінювати невеликі частини роботи. А можливо, попросять відразу оцінити весь скоуп робіт із тестування. У будь-якому разі для цього варто розуміти:
Наступний документ — Jira або будь-яка подібна система трекінгу та менеджменту. У Jira визначте типи сутностей, порядок їх переміщення по дошці, зміну статусів та життєвий цикл тікета. Заздалегідь обговоріть із колегами, як діяти з тестуванням Stories: заводити звичайний дефект, інстраспринт, сабтаск абощо.
Можливо, керівник проєкту і замовник вам довіряють, тому ви самі можете переміщувати таски по дошці в Jira. Ймовірним є сценарій, коли QA-команда переносить задачі у проміжний статус, а після демо їх закривають відповідальні особи.
У роботі з документацію зверніть увагу на:
Останній важливий пункт на цьому етапі — критерії потрапляння функціоналу чи Stories у тестування. QA має розуміти, за яких умов братися за тестування та коли його закінчити.
Ваше завдання — забезпечити прозорість роботи як усіх QA, так і проєктної команди загалом. Якщо кожен розуміє хто і чим займається, до тест-ліда буде мінімум питань. Для забезпечення прозорості на проєкті раджу запровадити кілька параметрів:
Щойно визначили це, переходьте до тонких налаштувань — до сетапу мітингів. Тут усе залежить від багатьох моментів: особливостей проєкту, бізнес-домену, складу команди, методів менеджменту. Я зупинюсь на найпопулярніших прийомах.
Один мій знайомий DevOps використовував при налаштуванні процесів молоток, що дозволяло виключити повторення командою більшості помилок. Деякі програмісти люблять працювати напилком або вставити в код певні елементи, які не підходять для цього.
Менеджери з аналітиками часом віддають перевагу паяльникам, щоб вивужувати з команди терміни, оцінки та іншу інформацію. Особисто я — за мирне врегулювання питань, тому пропоную при організації мітингів дізнаватися наступне:
Цей етап у тестуванні та розробці — фактично вихід на фінішну пряму. Заздалегідь продумуйте принципи деплою на QA, стейджі, проді:
Звісно, краще відправляти на прод у протестованому вигляді лише те, що потрібно. Та я б радив продумати план дій на випадок, якщо щось пішло не так.
Після деплою проєкту можна видихнути, але не можна зупинятися. Ви як тест-лід повинні весь час пам’ятати про необхідність навчання команди та обмін знаннями всередині проєкту чи відділу. У цьому вам допоможуть мануали та програми навчання. Визначте менторів у своїй команді — хто, коли та в якій формі навчатиме інших. Тут не буде зайвою ротація. Таким чином ніхто не буде нудьгувати, а проєктна експертиза ширитиметься на всіх учасників команди.
Спланувавши роботу над продуктом і загалом у команді, повертайтеся до комунікацій. Принципи прості:
Такі розмови дуже важливі. Вчасна комунікація допоможе виправити наявні недоліки, уникнути можливих проблем, отримати чіткий апрув на свої дії від усіх членів команди та замовника. Всі мають однаково розуміти, що будуть робити, як і навіщо.
Ви ж пам’ятаєте, що це все було лише входом у проєкт? От тепер можете почати працювати! На позиції тест-ліда вистачає щоденних рутинних завдань:
Усе це необов’язково робити самостійно. Кожен проєкт втілюється силами команди. Деякі задачі можна виконувати спільно з розробниками, менеджерами чи бізнес-аналітиками. А щось — дійсно лише самотужки. Зважайте й на те, що все задумане в проєкті може змінюватися. Тому намагайтесь бути гнучкими, а не сліпо слідувати певним патернам.
Дуже хочеться робити якісь десктопні апки. Сумую за часами коли всі програми були offline-first, і…
Надсилаючи криптовалюту, багато новачків ставлять запитання: як працюють комісії та чому вони відрізняються в різних…
Нова афера набирає обертів — ось детальний розбір того, як фальшиві потенційні роботодавці намагаються вкрасти…
Соцмережа з можливістю вбудовувати повноцінні додатки прямо в пости — звучить як фантастика, але Farcaster…
Я ніколи в житті не був на співбесіді «по ту сторону». Мене ніхто не запрошував…
Я багато писав про fly.io — тоді ще новачка на ринку IaaS/PaaS хостингу. Я й…