Як початківцю Manual QA безкоштовно прокачати знання і навички тестування

Привіт, мене звати Володимир, я Full Stack (automation + manual) тестувальник компанії DevelopEx і маю 6 років досвіду у сфері перевірки ПЗ.

Для початку трохи статистики. У внутрішньокорпоративному Slack-каналі для тестувальників було проведене таке опитування: «Чи проходили ви платні курси (чи інтернатуру) для тестувальників перед тим, як отримали свій перший job offer?». Із 22 респондентів 23% відповіли «Так, я вчився/-лась на платних курсах (інтернатурі)», 77% — «Ні, я використовував/-ла тільки безкоштовні джерела». Отже, можна припустити, що статистично більшість тестувальників влаштовується на роботу саме завдяки безкоштовній освіті.

Ілюстрація Марії Рибак

Теорія тестування, англійська мова та рекомендація

На мій погляд, необхідними та достатніми умовами для входу в ІТ з боку тестування є такі дві умови:

  • знання англійської мови на рівні Pre-Intermediate або вище;
  • знання основ теорії тестування.

Чому саме англійська мова та теорія тестування? Тому що в половині (або більше) вакансій на Trainee/Junior QA знання англійської включені в перелік базових вимог. В цьому легко переконатися, якщо відкрити кілька свіжих оголошень. Теорія тестування входить у базові вимоги, мабуть, всіх відповідних вакансій.

Суттєвою форою перед іншими кандидатами буде виконання третьої умови: вас можуть рекомендувати в ІТ-компанії. Тобто якщо ви знайомі з кимось із працівників. Але якщо із перших двох пунктів буде «0», рекомендація матиме слабкі шанси перетворитися на щось більше. Щоб у цьому переконатися, подивіться, яка конкуренція кандидатів на посаду Junior Manual QA: близько 13 кандидатів на одну вакансію (на час підготовки цього тексту за версією djinni.co).

З англійською все просто. Знання мови, мабуть, неможливо здобути швидко і безболісно. Потрібні місяці (а комусь і роки) наполегливого збагачення словникового запасу, перегляду фільмів «в оригіналі» та розвитку навички розуміти співрозмовника. Відповідно, англійська у вас або вже є, або... вперто вчіть. Точно знадобиться. Якщо не зараз, то років через два після початку роботи. Коли в команді, де ви працюватимете, постане питання, хто може вести мітинги із замовником.

До речі, якщо ви сумніваєтесь з приводу рівня, є непоганий індикатор: якщо можете на співбесіді з HR розмовляти англійською і розуміти, про що кажуть вам — отже, цей скіл у вас є.

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

Використовуйте відкриті джерела

Постає одвічне питання: йти на курси чи достатньо відкритих джерел? Моє бачення: вчіться із відкритих джерел. Сьогодні їх якість на високому рівні: інформацію подають повно, структуровано, з прикладами, а в деяких випадках ви навіть можете повчитись знаходити баги на тренувальному ПЗ (як правило, на наданому сайті). Цього — і наполегливості — цілком достатньо, щоб на співбесідах як з HR-спеціалістом, так і з досвідченим тімлідом показати, що ви вже знаєте немало.

Самоосвіта — це швидше

По-перше, самоосвіта із відкритих джерел — це швидше, ніж платні курси. Чи в кожного є час на 3–6 занять на тиждень впродовж 1–4 місяців? Натомість тридцяти днів системного самонавчання достатньо, щоб зрозуміти основні ідеї тестування, отримати мінімальну практику, а також зазубрити основні визначення. Наприклад: що таке тестування, скільки є принципів тестування і як вони формулюються, що таке тест-дизайн і які є його техніки тощо. Тут у слово «зазубрити» вкладено суто позитивне значення. Бо, на мій погляд, знання визначень не тільки справляє позитивне враження на технічного спеціаліста, який проводить співбесіду, а й банально допоможе швидше зрости в кар’єрі.

Нічого зайвого

По-друге, нічого зайвого. Ви фокусуєтесь на тому, що справді мінімально необхідно — а це лише теорія тестування. Подивіться програми платних курсів. Вам справді потрібно знати основи HTML, JavaScript чи SQL? Знати основи тестування мобільних застосунків, вебзастосунків? Вміти тестувати API? Розумітися в тонкощах Agile чи Waterfall? Є немалі шанси, що вас (ура!) візьмуть на проєкт, де все, що треба від Junior QA — це погляд на задачу з точки зору здорового глузду. З часом ви наб’єте ґуль на пошуку багів і зрозумієте, куди хочете розвиватися далі: в автоматизатори, програмісти, проєкт-менеджери чи, можливо, лишатися в чистому manual-тестуванні.

Зручний графік

По-третє, у випадку самоосвіти ви вчитеся, коли забажаєте. Але кожного дня! Зручний графік навчання (і роботи, до речі, теж) — це величезна перевага для ефективної організації свого часу. Особливо для тих, хто вчиться в університеті або зайнятий основною роботою.

Перевірені безкоштовні джерела

Якщо ви до цього часу вагалися (курси чи не-курси), а зараз теж, як і я, схиляєтесь до думки, що безкоштовна освіта може бути ефективною, у вас може виникнути питання: «Які саме безкоштовні джерела використовувати для навчання тестування ПЗ?». Передусім ресурси мають бути кимось рекомендовані. Якщо у вас є знайомі з релевантним досвідом — запитайте їх. Якщо таких знайомих нема, то мої колеги і я зараз поділимося кількома джерелами, які заслуговують на увагу. Усі позиції перевірені на власному досвіді.

Безкоштовні курси

Дешеві курси

Шпаргалки

Книги

  • «Тестирование Дот Ком, или Пособие по жестокому обращению с багами», Роман Савин.
  • «Тестирование программного обеспечения. Базовый курс», Святослав Куликов.
  • «How Google Tests Software», James Whittaker, Jason A. Joseph, Jeff Carollo.

YouTube-канали

Участь в бета-тестуванні

Ще одним варіантом безкоштовної освіти є волонтерська участь у бета-тестуванні продукту. Такі відомі компанії, як Apple, Google чи Microsoft, відкривають доступ до тестування ще не випущених продуктів. Також є ресурси-агрегатори (дивіться список у кінці цього розділу), де інші компанії оголошують про відкриття бета-тестування своїх продуктів.

Плюсами цього підходу є:

  • ви починаєте мислити як тестувальник;
  • дізнаєтесь на практиці про інструменти для опису дефектів;
  • вчитеся описувати дефекти;
  • буде що вказати в резюме :)

Недоліки теж є:

  • як правило, потрібно тестувати англомовні програми;
  • баг складно знайти: широке поле пошуку, відсутність документації, можлива відсутність навички роботи з тестованим типом ПЗ;
  • може здатися, що «все це дуже складно і незрозуміло», і відбити бажання займатися тестуванням ПЗ.

Агрегатори продуктів, відкритих для бета-тестування:

Інтернатура (стажування)

Окремо варто розглянути стажування в ІТ-компанії. У дечому цей варіант кращий за освіту за відкритими джерелами, тому що:

  • компанія гарантує стажеру працевлаштування;
  • ви швидко працевлаштовуєтесь;
  • вас «заточують» під реальний проєкт, відповідно ви вивчаєте тільки те, що буде потрібно;
  • вам ще й платять.

Але в інтернатури є і недоліки:

  • з повного «нуля» можуть не брати (тобто перед інтернатурою все одно потрібно підучитись);
  • повна зайнятість, що може не підійти для студентів очної форми навчання та працевлаштованих;
  • низька оплата праці (тож бажано мати «заначку» на 2–3 місяці).

Однак, якщо у вас є можливість стати інтерном — ставайте. Це точно краще від платних курсів або платних курсів з гарантією працевлаштування. Хоча б тому, що інтернатура — це вже реальні задачі і, фактично, реальна робота.

На ринку є чимало IT-компаній, які пропонують такий підхід. Як перевірений ресурс — компанію, яка приймає на стажування — можу рекомендувати DevelopEx :) У нас інтерн після закінчення стажування переходить на реальний проєкт на позицію Junior Manual QA Engineer.

Замість summary

Побутує думка: «Якщо я заплачУ, то мене навчать». IMHO, це хибна думка. Є щонайменше два приклади (мій особистий і колеги), коли платні курси не привели до очікуваного результату. І навпаки, є приклади, коли суто самонавчання виявилося достатньо, щоб після двох співбесід отримати пропозицію.

Щоправда, є й інший досвід, коли здобувачу знадобилося 25 співбесід і пів року пошуків, щоб отримати перший job offer.

Тож продовжуйте, поки не візьмуть. Врешті, кожна невдала співбесіда додає вам досвіду в проходженні співбесід, і шанси, що наступне інтерв’ю буде успішним, зростають.


Дякую колегам, які знаходили в статті баги, доповнювали та покращували: Анастасія Павлініч, Поліна Овсяннікова, Максим Печора, Кирило Бернацький, Володимир Гобов, Денис Івченко, Олександр Тофанчук.

👍НравитсяПонравилось15
В избранноеВ избранном15
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Записывала видео по теории QA на пальцах для начинающих :)
посмотреть можно тут
kungfuqa.com/theory_qa

Дякую Володимере за цікаву та корисну статтю!)

Владимир, а как так получилось, что за 6 лет в тестировании Вы так и не узнали, что связка manual + automation называется general, а не full stack?

В коментарях відповідав вже.

не, ну если вам так нравится...

В більшій мірі погоджуюсь, але все ж є деякі заперечення.

1. Через те, що всі лізуть в ІТ — рівень кандидатів значно просів. За крайній рік особливо. Співбесідую кандидатів багато років, тому можу порівнювати. При цьому самі вимоги зростають...
Тому я би не акценитував увагу на відкритих джерелах.
Бо так само з ютубу можна вчитися програмуванню, авіамоделюванню і мікробіології...
Це окремі професії. І з відкритих джерел не буде деталей та нюансів. Лише фантік для співбесіди.

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

3. «...а також зазубрити основні визначення». Так, і як результат дивимося пункт 1.
Якщо ви йдете в ІТ галузь і намагаєтеся щось зазубрити(навіть у позитивному значенні), а не зрозуміти, то мені знову шкода за галузь...

4. «...все, що треба від Junior QA — це погляд на задачу з точки зору здорового глузду».
Камон, зараз 2021 рік. Ніхто олівці на співбесідах не тестує як було років десять назад.
Кілька варіантів вимог на джуна зараз:
github.com/...​quality-assurance-roadmap

www.mindmeister.com/...​25/junior-qa?fullscreen=1

www.mindmeister.com/...​u/1558647509?t=973hdS2AKb

1-2. Менше з тим, опитування показало, що 3/4 використовувало лише відкриті джерела до першого джоб оферу.
Порівнювати тестування з авіамоделюванням чи мікробіологією некоректно. Тестування, схоже, не викладають окремим курсом в університетах, кафедр тестування теж не зустрічав.

3. Спробуйте дати визначення слову «якість», спираючись лише на розуміння.

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

Чесно кажучи, не знаю, хто і навіщо малює такі діаграми. Я особисто ще не зустрічав людини (включно з senior QA чи Senior Dev), яка б володіла всіма перерахованими навиками.

1-2. Ви ж розумієте, що вибірка одного опитування — це не показаник. Чи це варто пояснювати людині, яка займається професійним аналізом?
Навіть, якщо це правда, то рівень інженерів, які «проскочили» на таких знаннях — з кожним роком все нижче.
3. Легко. Якраз, коли я або своїм інженерам, або в ІТ академії при своїй компанії — пояснюю поняття якості, то взагалі уникаю ІТ тематику. Якраз головне вміти пояснити. Щоб людина про поняття якості задумувалась не тоді, коли в неї чомусь вже позиція мідла, чи сінйора...і щоб вловила саму суть.
4. Не знаю за продавців. Але знаю ІТ ринок. Приймаю участь в різних співбесідах. Тому інфа сотка)

Якщо у вас є дані про те, який відсоток кандидатів працевлаштовуються після платних курсів (в порівнянні з загальною клькістю працевлаштованих джуніор/трейні куа) — поділіться, буде цікаво.
Колега сказав, що три роки тому тестував маркер. Вчора людина випустила відос про те, як же тестувати олівець: www.youtube.com/watch?v=qpSEsGEGYg8 .

Правильно я розумію, що якщо в мене в запасі немає підготовленої ліночки з даними, то для вас актуальними будуть лише те, що ви маєте з однією вибірки?))

Людина, яка зняла відос про олівець тільки і займається тим, що знімає відоси. Він ще не має великого досвіду в сфері і сам про це наголошує...

Якщо вас на співбесіді зараз запитають про тестування олівця, то краще встати, подякувати і піти з такої співбесіди...імхо

Ну інших конкретних даних, окрім цієї однієї вибірки, поки що немає. Тому так, ці дані і є для мене актуальними.

4. Цього року я тестувала олівець на співбесіді )) А ще на одній — папірець.

Я в этим летом на собеседовании тестировала телевизор. И как я узнала, при собеседовании в эту компанию всегда просят что-то протестировать.

Стаття з 2014 року? Автор вказує на 13 людей на місце, а потім сам себе топить, приводячи аргументи за самоосвіту. Не треба так. Зараз все дуже динамічно і потрапити на роботу дуже складно.Треба виділятись і бути конкурентним. Багато вчитися. І не треба процес навчання примітизувати до " знання теорії тестування" Я теж не фанатію від курсів. Я би поєднував курси і самоосвіту. Крім того,я би ще й курси вибирав дуже прискіпливо, бо справді класних не більше 10-ти на всю країну. Крім того, автор взагалі нічого не сказав про розвиток власних soft-skills. А це інколи важливіше, ніж hard-skills. Стаття має гарні та корисні посилання,але треба читати її обережно.

Звичайно, треба багато вчитися. Але вимоги дуже різні. Що ж вивчати? SQL, MySQL, Oracle, NoSQL, MongoDB, REST API, SOAP, XML, HTML, CSS, Linux, Docker, web-browsers, Agile/Scrum, FW, TestRail, HP ALM, Microsoft Test Manager, JIRA, Git, mobile testing...? Я відкрив лише 4 вакансії на джинні. Потрібні роки, щоб вивчити згадані принципи, технології та інструменти бодай поверхово. Горе в тому, що з всього цього тестувальнику-новачку потрібно, може, 2-3 навики. Інші або легко набуваються, або відмирають.
Але якщо ви зосередитесь на лише двох — теорія та англійська — і вже потім, якщо бажаєте, додасте, наприклад, навик роботи з API, ви суттєво виокремите себе серед інших.

Це стаття с 2008-го, ей-богу.

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

Данные немного устарели и сейчас от Джуна нужны и основы SQL, HTML , не говоря уже об основах тестирования АРI ( отличать REST and Soap) и вэб приложений. Мало того, без знаний минимальных Linux, Git и одного из снифферов (Чарлик, Фидлер или Проксимэн) особо разговора не получится. Список требований очень сильно расширился, но может разниться от места к месту.

Вакансії без обов’язкових вимог знань сіквела, хтмл, апі, рест, соап, лінукса, гіта та сніферів:
jobs.dou.ua/...​pgame-qa/vacancies/181436
jobs.dou.ua/...​/newxel/vacancies/178970
jobs.dou.ua/...​ies/p2h/vacancies/183321
jobs.dou.ua/...​ologies/vacancies/182728

Гарна стаття. Від себе хочу додати. Ніякі курси не зроблять із вас спеціаліста якщо немає мотивації. Багато моїх знайомих цікавились у мене як стати QA. Та в їх словах я не чув пориву та бажання розвиватись у цій сфері, а лише бажання заробляти гроші. Закінчити курси це + але немотивовані люди вивітрюються на співбесіді.

Щодо full stack для QA це якось на мій погляд не зовсім коректно.
FrontEnd і BackEnd це окремі гілки якими займаються різні спеціалісти або один Full-stack, який орієнтується в обох. Full-stack QA це той хто орієнтується в automation і manual. Але тоді
виходить, що це окремі спеціалісти які не орієнтуються в роботі один одного. Automation у manual ну і manual у automation — очевидно. Якщо ще manual дійсно може не знати мови програмування для написання тестів, тоді automation не орієнтується у роботі manual ?
Automation це розвиток для manual, тому термін Full-stack для QA це Automation, оскільки такий спеціаліст орієнтується та може виконувати роботу як automation так і manual.

Якщо ще manual дійсно може не знати мови програмування для написання тестів, тоді automation не орієнтується у роботі manual ?

Орієнтуватись у роботі то трохи інше, ніж вміти робити це як частину своєї роботи, на рівні з чистим MQA.

Automation це розвиток для manual

Це один з можливих варіантів розвитку, але не обов’язковий.

Full Stack (automation + manual) тестувальник

хіба це не називається General QA?

11.6 млн результатів на запит «full stack qa engineer». Менше ніж на «General QA», але має право на життя.

хмм
jobs.dou.ua/...​ies/?search=full stack qa — Немає вакансій за запитом «full stack qa»
jobs.dou.ua/...​ancies/?search=general qa — 10 вакансій за запитом «general qa»
хіба може в нас така термінологія не прийнята

Всю дорогу це було дженерал куа, не тре видумувати

Мне интересно сколько лет назад автор последний раз открывал требования в вакансиях junior QA, с тем что перечислил автор не возьмут даже на стажировку/интернатуру.

Якщо ви добре знатимете теорію тестування і матимете гарну англійську, на трейні вас точно візьмуть. З джуном як пощастить. Але якщо кандидат заходить з іншого боку — вивчає JIRA, Scrum, SQL, і вцілому хоче осягнути все те, що описано у вакансіях — але при цьому забуває про теорію, такий кандидат, імхо, довго шукатиме свою компанію.

Можливо 6 років тому і брали на роботу трейні qa, якому достатньо було знати основи теорії тестування і знати англійську на рівні pre intermediate. Наразі всі хочуть практичного досвіду, тих, хто працював вже з api і знає бази даних. Самоосвіта — це круто в випадку, якщо ти знаєш, що вчити. Якщо ти думаєш, що тестування — це на фронтенді поклацати на кнопки, то самоосвіта дуже не допоможе.
В мене типу сертифікат з IT курсів є, і сертифікат, що в софтсерві технічну пройшов і то мене не розгядають без практичного досвіду. Що ж казати про людину, яка самоосвітою займається і пусті строчки в cv, даж на співбесіду не запросять. Найкраще — це інтернатура 100%

Згодна, що потрібен досвід, точніше він точно не буде зайвим. Але, на мою думку, поняття «теорія тестування» це вже не просто теоретичні знання, а також вміння хоча б у «домашніх умовах» працювати з API та SQL і т.д. Тобто, якщо раніше можна було тільки прочитати декілька «шпаргалок» з основами, то зараз тільки читання вже недостатньо. Тобто все це зараз і означає «теорія тестування», тобто — база.

А ше бажано знати частково якусь мову програмування;) Не скажу, що курси багато чого мені дали, але хоча б конкретний план того, що треба знати. Казки в лінкедіні, що беруть на qa людину в любому віці і навіть без технічної освіти, лише за сильне бажання вчитись і працювати, залишаються для мене казками) 1 випадок на тисячу

Можливо :) Відпишу вам, коли мене візмуть на роботу :)))

Чи потрібна мова програмування, залежить від обраного напряму. Якщо автоматизація — так. Для мануала ця вимога не обов’язкова.

Найкраще — це поєднувати курси і самоосвіту, і ше опісля піти на стажування;) безпрограшний варіант, але потрібно мати необмежений час і кошти;)

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

Забавно, но у трейни/джун работа это клацать кнопочки на фронте))

В тому, щоб клацати кнопки на фронті, нема нічого поганого. Суть роботи тестувальника: знайти проблему. Клацаєте ви по кнопочкам, запускаєте скрипти чи переглядаєте код — яка різниця, якщо з кожною знайденою вами проблемою ПЗ стає кращим.

С той лишь разницей, что баг мало найти. Его нужно исправить. И желательно в процессе не отсрелить ничего корректно работающего. А после этого да, ПО станет лучше=)

Подписаться на комментарии