У дитинстві нас часто запитують, ким ми хочемо стати, коли виростемо. Ми відповідаємо — принцесою, рокером, поліцейським, суперзіркою. Або простіше — лікарем, вчителькою, пожежним, актрисою.
Я не дуже пам'ятаю, що я відповідала в дитинстві, але навіть на останньому курсі університету я не знала, ким хочу стати. Пробувала різні варіанти, сфери, ролі — і весь час відчувала, що не те.
А тепер я стала тестувальником, і знаєте, мені це страшенно подобається!
Вважається, що круто бути програмістом.
Програмісти — це такі дивовижні люди, які вміють перетворювати рядки похмурого коду в безмежні ігрові локації, безпечні банківські карти і стікери з котиками. З боку середньостатистичного громадянина все це виглядає як магія. І якби це справді було так — тестувальники були б не потрібні.
Але, на щастя для нас, на ділі процес написання програми немає нічого спільного з чаклунством і народжується зі спільних зусиль великої кількості людей.
Створення програмних продуктів дуже нагадує будівництво будинку. Є замовник, який «замовляє музику», є виконроб (він же тімлід), є архітектори, інженери, конструктори. Вони добре знають свою роботу і, безумовно, зможуть побудувати будинок по тому зображенню, яке їм показав замовник.
Здавалося б, чого простіше, і навіщо в цей процес додавати ще комісію, що перевіряє?
Так-то так, але проблеми починаються в той момент, коли:
- Замовник не до кінця знає, чого він хоче
- Розробники впевнені, що точно знають, чого хоче замовник
І тут на допомогу поспішають Чіп і Дейл-тестувальники. Саме вони перевіряють, щоб у будинку було опалення, двері відкривалися в потрібну сторону, а стіни були пофарбовані в жовтий, а не колір дитячої несподіванки. Вони уважно порівнюють побудоване з проектним, і при найменших відхиленнях б'ють на сполох — тому що, так чи інакше, навіть один крихітний жучок, що оселився в стіні, в результаті перетвориться в колонію термітів і зжере весь будинок разом з вмістом.
Завдяки злагодженій роботі всіх перерахованих вище учасників ймовірність, що для виправлення недоліків доведеться зносити все, прагне до нуля. Максимум — шпалери переклеїти.
Розробники часто недолюблюють тестувальників за те, що ми вказуємо їм на їх помилки. Будь-розробник пише ідеальний код — це аксіома. Завдання тестувальника — знайти і виловити в ідеальному коді всі баги і ненав'язливо пред'явити розробнику. Без дипломатії тут не обійтися.
Крім дипломатії, робота QA вимагає уважності, впертості, і навіть занудства, але в той же час від нас вимагається безмежний політ фантазії на тему що може зробити користувач і чи може це зламати програму.
На жаль, у користувачів фантазія завжди багатшима — на моїй практиці був випадок, коли користувач з набором прав «мені тільки запитати» примудрився написати і зберегти число 50 в поле, де захардкоджено «нічого, крім нуля». Навіть спільними зусиллями всієї команди ми не змогли відтворити цей фінт вухами.
Так чому ж класно бути тестувальником?
По-перше, тестувальники ведуть комунікацію і з девелоперами, і з бізнесом, і з користувачами — і це чудова можливість вивчити продукт з усіх боків, розуміти ситуацію і зсередини, і зовні, і заодно розвивати soft skills.
По-друге, часто ми знаємо продукт навіть краще самих розробників. адже в процесі тестування доводитися забиратися в найвіддаленіші куточки програми, натискати самі хитро заховані кнопки і збирати всі можливі дані. Ми пишемо документацію з нуля, адаптуємо кейси, складаємо баг-репорти, навіть заглядаємо в вихідний код — а значить, знаємо всі слабкі і сильні місця, можливості та загрози.
Рекомендуємо курс по темі
По-третє, дуже часто саме за тестувальником залишається вирішальне слово — чи буде реліз продукту чи ні. Влада (зловісний сміх)!
І, звичайно, відповідальність. Не до кінця перевірений продукт несе ризики для замовника, затримка релізу несе додаткові витрати для виконавця, тому дотримання балансу важливо, і тестувальники тут далеко не останні люди.
По-четверте, тестувальники використовують безліч інструментів в процесі роботи — і це вже хороші кроки для саморозвитку і multifunctionality.
І, нарешті, хороший QA фахівець — це і аналітик, і менеджер, і стратег, і навіть трохи розробник.
Кажуть, «увійти в айті» найкраще через тестування — я згодна з цією тезою, але не тому, що це легко (це складно і напряжно), а тому що з цього ракурсу найкраще видно всі доступні сфери і можливості, які ховаються за абревіатурою IT.
Почавши свою кар'єру з тестування, можна вирости в класного девелопера, досвідченого бізнес аналітика або проджект менеджера.
Але якщо ви захочете залишитися тестувальником — це теж буде КРУТО.
І якби я в дитинстві знала, що існують такі цікаві люди, то діалог з ордою родичів на сімейному святі звучала б так:
- Оля, ким ти хочеш стати, коли виростеш?
- Тестіловщіком !!!