Як тестувальник створює цінність
#testing
Цінність інженерів
Як наша повсякденна робота, як інженерів, створює цінність для компанії?
Якщо більш абстрактно, то ми допомагаємо користувачам вирішити їх проблеми чи біль.
Коли тільки ми перестаємо вирішувати проблему - користувач може змінити наш продукт на продукт конкурентів.
Тому наша робота не в тому, шоб просто тестувати згідно усіх можливих технік тест-дизайну чи писати крутий код з модними паттернами.
Ми, як тестувальники, допомагаємо компанії досягати цілей, а саме - створювати цінність для користувача.
Для того, щоб створити цінність, розробник робить дві речі
- пише код, що працює
- пише код, який вирішує проблему користувача
Щоб підвищити свою ефективність та цінність, розробник може працювати над найбільш важливими фічами та зменшувати час, поки фічі стануть доступними користувачеві.
Для того, щоб створити цінність, тестувальник робить наступні речі:
- збирає інформацію про стан продукту та ризики (досліджує)
- виявляє можливі проблеми (аналізує)
- надає інформацію учасникам процесу розробки (репортить)
Для тестувальника важливо вчасно надавати зрозумілу інформацію про найважливіші фічі. Та надавати цю інформацію саме тим людям, яким вона потрібна.
Чим швидше тестувальник надасть інформацію, тим швидше будуть прийняті рішення щодо фіксу багів та релізу.
Цінність зворотнього зв'язку
Цінність фічей, як і цінність інформації зменшується з часом. Якщо фіча рік лежить на поличці та не йде в реліз - є ризик того, що вона вже не буде потрібна користувачеві взагалі. Саме тому, розробники у великих компаніях та стратапах намагаються робити релізі настільки часто, наскільки це можливо.
Інформація про стан продукту також повинна надаватися вчасно. Тому багато команд оптимізують процеси тестування таким чином, щоб отримувати зворотній зв'язок не через дні та тижні, а через лічені хвилини.
Для цього й потрібні автотести, що запускаються так часто, як тільки можна. (Й моніторинг)
Для цього й потрібні додаткові інструменти для генерації тестових даних, запису відео та скріншотів, збирання та аналізу логів та метрик з продакшену.
Цінність коду й тестів
Робочий автотест на локальній бранчі має меншу цінність, ніж той, для якого створений PR. Автотест у процесі код рев'ю - має меншу цінність, ніж той, що вже в головній гілці. Але тест, що вже вмерджений в develop гілку та ганяється кожен день - має найбільшу цінність.
Тест кейс, тільки-но доданий в TMS приносить менше користі, ніж той, який вже використовується, як частина чекліста.
Чим швидше ви пройдете код рев'ю або ж зберете потрібну інформацію для тестування - тим швидше тест буде приносити цінність.
Цінність автоматизованих тестів
Автоматизація сама по собі не приносить цінності користувачеві. Це просто один з інструментів, щоб отримати інформацію та прискорити фідбек. Так само, як юніт тести чи автоматизований CI/CD пайплайн. Або ж canary релізи.
Автотести - це внутрішній продукт. Продукт, що вирішує "біль" команди розробки.
Для того, щоб отримати найбільше цінності від автотестів - треба відслідковувати які її "фічі" важливі для внутрішніх юзерів:
- для менеджера або ліда більш важливі репорти та показники покриття
- для розробника - швидкий фідбек та розуміння де саме проблема в продукті
- для інших тестувальників - зрозумілість коду автотестів та легкість отримання важливої інформації про помилки
Як тестувальник може підвищити свою цінність
- думати, яка інформація та до якого внутрішнього "користувача" надається
- оптимізувати свою роботу, щоб допомогти команді розробки швидше виявити та пофіксити проблеми та відправити нові фічі користувачам
- працювати над покращенням автотестів - як зробити їх швидшими та стабільнішими
- візуалізувати свою роботу та стан системи для команди - створіть корисні дашборди, що показують прогрес або проблемні місця в аплікації
Post #483
1.97K
- ❤ 25
- 👍 11
- 🔥 5