До списку

Поради тестувальнику-початківцю

11 Червня, 2021

Тестувальник програмного забезпечення — це людина, без чиєї роботи не обходиться жоден якісний продукт. Які скіли та знання необхідні тестувальнику? Сьогодні знайдемо відповіді на ці та багато інших питань.

Тестувальники, Quality Assurance Engineers і фахівці з Quality Control — це члени команди розробки продукту, які займаються пошуком помилок і збоїв, відповідають за якість продукту, перевіряють підсумковий результат на відповідність вимогам замовника, документують усі проблеми й постійно комунікують із розробниками та іншими членами команди.

Фахівець із тестування може сміливо вважати себе інженером, вченим і дослідником, адже він постійно намагається дивитися на звичні речі під іншим кутом. Звісно, тестувальники займаються пошуком помилок і дефектів, описують їх, створюють тест-кейси та чек-лісти. Тестувальникам доводиться постійно розбиратися з різними продуктами, особливостями сфери, у якій вони використовуються, і специфікою домену проєкту.

Щоб ефективно виконувати роботу тестувальника, вам знадобляться певні навички і знання, тож почнемо з них. А далі поділимося посиланнями на корисні книги, YouTube-канали та сервіси. Наприкінці матеріалу досвідчені тестувальники з ISsoft дадуть поради, які допоможуть правильно розвиватися в тестуванні.

Які навички потрібні тестувальнику?

Щоби працювати в тестуванні, вам потрібні певні професійні знання, які належать до технічних навичок (hard skills), і гнучкі навички (soft skills), які допоможуть розвиватися в професії і продуктивно працювати.

Soft skills, які необхідні тестувальнику:

  • Комунікація. Це одна з найважливіших навичок, до якої входять такі вміння: здатність грамотно поставити питання і спілкуватися з колегами. Тестувальник — це член команди, який відповідає за якість продукту. Отже, він має розуміти, як користувачі сприймуть продукт і з якими технічними труднощами може зіткнутися команда розробки. Щоби самому в усьому розібратися, важливо правильно сформулювати питання до всіх сторін. Наприклад, ви знайшли баг, але сумніваєтеся, що його градація критична за серйозністю (Severity). Тоді вам потрібно поспілкуватися з розробниками, щоби розуміти, яку роль у продукті грає виявлена деталь. Для цього потрібно вміти правильно поставити запитання і знайти підхід до колеги. Тут важливо показати тому, у кого питаєте, що ви вже вивчали питання й намагалися знайти відповідь, щоби співрозмовник бачив, що ви зацікавлені в його допомозі і вже щось робили самі.
  • Уміння чітко формулювати свої думки. Це вміння знадобиться вам у щоденній роботі: ви будете описувати знайдену помилку, її локалізацію й поведінку для програмістів. Щоби розробник не читав від вас твори на вільну тему й потім не витрачав час на те, щоби вас зрозуміти, ваші описи мають бути максимально лаконічними. Для цього потрібно вчитися висловлювати свої думки простими реченнями, коротко і зрозуміло.
  • Вміння оцінювати важливість. Вам потрібно буде постійно присвоювати кожній знайденій помилці ступінь важливості. Це вміння пов’язане з першою навичкою — комунікацією. Щоби правильно оцінити рівень помилки, ви маєте зрозуміти пріоритетність функцій продукту для свого проєкту.
  • Критичне мислення. Воно знадобиться вам, щоб із сумнівом дивитися на кожну деталь продукту. Також за допомогою критичного мислення вам потрібно буде аналізувати результати тестування, пов’язувати їх з алгоритмом ваших дій. Якщо ви захочете піднятися кар’єрними сходами й зайнятися автоматизованим тестуванням, то вам доведеться писати код і використовувати програми, які будуть самостійно запускати і виконувати тести, а вам залишиться якісно проаналізувати виявлені збої.

Hard skills:

  • Розуміння методологій розробки ПЗ. На кожному проєкті використовується певна методологія розробки, розуміння якої у вас повинно бути. Оскільки кожна з них має свої особливості та етапи, ви маєте розуміти, коли починається процес тестування і які стадії буде проходити продукт після вас.
  • Знайомство з видами тестування. Є різні види тестування й кожен із них має свою специфіку та призначення. Щоб ефективно і швидко виконувати роботу, ви маєте розуміти, який вид тестування вам потрібен і як грамотно та ефективно його проводити.
  • Високий рівень знань OC Windows і Linux. Крім очевидного використання цих навичок для інсталяційного тестування, необхідно в деталях розуміти роботу операційних систем для коректного налаштування середовища і для запобігання несподіванок, пов’язаних із впливом тих чи інших особливостей функціонування ОС на роботу тестувальника.
  • Розуміння client-server архітектури. Ці знання стануть у пригоді, щоби розуміти, як працює продукт, який вам потрібно перевірити, і щоби ви могли самостійно визначити, на чиєму боці знаходиться виявлена вами проблема. Наприклад, непрацюючий елемент на сайті — це недолік фронтенд-розробників або ж проблеми з боку серверної частини?
  • Початкові знання SQL. Понад 95% веб-додатків використовують реляційні бази даних для зберігання інформації, тому мова запитів SQL знадобиться для розуміння процесів взаємодії додатка з БД і перевірки її працездатності. У майбутньому вам знадобиться SQL, якщо ви вирішите зайнятися не ручним, а автоматизованим тестуванням.

Як тестувальнику-початківцю, вам обов’язково потрібно знати:

  • що таке user-story;
  • як писати тест-кейси та тест-плани;
  • що таке життєвий цикл дефекта;
  • як працювати із системами управління вимогами та сценаріями тестування;
  • основи роботи з Git.

Інші корисні навички для тестувальників:

  • Посидючість. Уміння довго працювати над одним завданням — важлива навичка як для початківця, так і для досвідченого тестувальника. У роботі є чимало рутинних моментів, і успіх усього продукту може залежати від того, наскільки уважно й детально ви їх пропрацюєте.
  • Уважність. Увага до деталей допоможе вам дивитися на продукт і бачити його слабкі місця, найменші недоліки, а, отже, знайти цікаві підходи до тестування й баги.
  • Допитливість. Це риса, яка допоможе вам продуктивно працювати. Завдяки допитливості ви зможете скласти тест-кейси, яких ще не було, і знайти приховані від очей дефекти.
  • Відповідальність. По-перше, відповідальний фахівець — це той, хто не відкладає виконання завдань і робить усе вчасно. По-друге, це той, хто доводить навіть найскладніші й рутинні завдання до кінця. Такий підхід до робочого процесу позитивно позначиться на якості продукту й дасть вам змогу швидко рости.
  • Англійська мова. Напевно, ви вже помітили, що в IT-сфері жоден фахівець не може якісно працювати без англійської мови. І ви не виняток. Зазвичай test cases пишуть англійською мовою. У продукті, який ви тестуєте, може використовуватися тільки іноземна мова, а ваші замовники і члени команди теж можуть розмовляти лише англійською. Та й ніде правди діти, багато літератури, яка стане вам у пригоді, також опублікована англійською та ще не перекладена українською.

Як розвиватися тестувальнику-початківцю?

Ми з’ясували, які навички та якості мають бути в людини, яка хоче прийти в професію. Тепер поговорімо про те, як можна розвиватися. Ми підготували багато корисних матеріалів для вашого професійного росту.

Самостійне навчання

Для цього потрібне велике бажання й мотивація. На курсах вам викладають структуровану чисту інформацію, проте необхідну літературу ви точно зможете знайти в інтернеті самостійно. Починати навчання варто з прочитання професійних базових книг, які введуть вас у світ IT, пояснять те, що потрібно для подальшого розвитку ваших навичок і умінь. Після того, як ви прочитаєте кілька професійних книг, радимо вам спробувати написати test cases на практиці, подивитися, з якими програмами працюють фахівці, встановити їх і розібратися в механіці дій.

Пропонуємо вам підбірку корисних матеріалів для вивчення тестування.

Книги для тестувальників-початківців

  • «Тестування DOT COM», Роман Савін. Книга докладно і зрозуміло пояснює всі поняття, показує роботу тестувальника на прикладах і буде корисна кожному тестувальнику-початківцю.
  • «Тестування чорного ящика. Технології функціонального тестування програмного забезпечення й систем», Борис Бейзер. Після того, як ви прочитаєте цю книгу, ви будете знати, як знайти максимальну кількість помилок за мінімальної кількості витрат.
  • «Як тестують в Google», Джеймс Уіттакер, Джейсон Арбон, Каролло Джефф. Назва книги говорить сама за себе.

Пропонуємо почати з цих книг і обов’язково застосовувати отримані знання на практиці.

Корисні ресурси

  • Heisenbug. YouTube-канал від команди конференції Heisenbug. Ведучі й гості випусків обговорюють новини QA-індустрії, говорять про технології, життя й конференції.
  • Відеолекції, курс тестування від mail.ru. Цьому плейлисту на YouTube вже п’ять років, але він усе ще корисний для тестувальників-початківців.
  • Форум тестувальників. Справжній форум із гілками обговорення.
  • Radio QA. Сайт із подкастами для тестувальників.
  • Software Testing Tutorial: Free QA Course. Безплатний онлайн-курс із тестування. Зверніть увагу на те, що всі матеріали в ньому англійською мовою.
  • Black Box Software Testing course. На сайті багато корисних відео, лекцій та матеріалів. Обережно, англійська.

Курси тестування

Ще один спосіб навчитися тестуванню — курси. У Мінську, наприклад, їх понад п’ятдесят. У Львові використовується частина адаптованих курсів або є можливість пройти курси з Мінська віддалено. Бувають навіть безплатні набори, куди ви можете потрапити, якщо добре пройдете відбіркове випробування. Там викладачі розкажуть вам усе, що має знати фахівець на базовому рівні. Будьте готові багато читати, виконувати завдання вдома і вдосконалювати свої навички після закінчення курсів. Найчастіше курси не дають усього практичного багажу знань, які знадобляться вам на роботі.

Приходьте в ISsoft

Якщо у вас є технічний бекграунд і ви навчалися в технічному виші або на курсах тестувальника, то сміливо приходьте в наш Тренінг-центр, щоби спробувати себе на посаді Junior QA Engineer.

Якщо ви прочитали всі книги, послухали подкасти та подивилися багато відео, то вимали розібратися в поняттях і зрозуміти, що таке тест-кейси, звіти про дефекти (bug reports) і з якою документацією працює тестувальник. Саме час переходити до практики: вам потрібно розписати для себе, як би ви тестували різні предмети, наприклад, ручку, дисковод, мило або повітряну кулю. Що більше кейсів для себе ви розберете, то легше вам буде на співбесіді.

Поради від досвідчених тестувальників

Кирило Ратафія поділився своїми порадами для тестувальників-початківців:

  • Максимально проявляйте ініціативу, тестуйте якомога більше, не бійтеся питати.
  • Читайте спеціалізовану літературу (бажано англійською) і враховуйте плани на майбутнє (якщо ви плануєте перейти в автоматизацію, то не забувайте про мови програмування, а якщо в ручне тестування, то читайте книги про ручне тестування).
  • Читайте нові статті про QA в інтернеті, постійно підвищуйте свій рівень.
  • Не забувайте про англійську мову: найімовірніше, вам доведеться часто спілкуватися із замовниками і створювати тестову документацію.
  • Покращуйте навички ділового спілкування. Вам доведеться взаємодіяти з різними групами фахівців, у тому числі говорити людям, що щось не працює.
  • Не забувайте про внутрішні корпоративні курси в компанії, де ви працюєте: багато чого буде новим і не буде застосовуватися в роботі, але, коли настане момент, усе швидко згадається.
  • Не забувайте відпочивати, займатися спортом, добре харчуватися (це допоможе запобігти вигоранню через надлишок інформації, підвищить настрій і продуктивність).
  • Не забувайте про самомотивацію, ставте цілі, знаходьте корисне для розвитку в поточному проєкті.

«Найголовніша порада — не переставайте стежити за новинами Тренінг-центру вашої компанії і відвідувати всі тренінги, які вас цікавлять, а в ідеалі — відвідувати всі QA лекції. Вони дають дуже багато корисної інформації. Також рекомендую постійно розвивати комунікацію з колегами; що кращі й більш дружні відносини, то плідніше вирішуватимуться всі питання. Ніколи не соромтеся ставити питання. Постарайтеся вибрати для себе найбільш цікавий напрям і робити наголос у навчанні на тому, що приваблює найбільше. Завжди вчіться і знаходьте час для самоосвіти. І все вийде!».

Павло Смеловський

Звісно, щоби стати хорошим тестувальником, треба любити свою роботу, постійно навчатися і відповідально підходити до кожного продукту, який ви перевіряєте, ніби від нього залежить ваше життя. І тоді у вас усе вийде!