Жағдай ушығып тұр: монитор алдында отырсыз, билд құлап жатыр, қателік қайталанбайды, өндіріс екі сағаттан кейін релизді күтіп отыр, ал чатта тимлид: «Жағдай қалай?» деп жазып үлгерді. Мұндай сценарий әрбір әзірлеушіге таныс.
Корпорациядағы тестілеушінің жұмысы — бұл «түймелерді басу» емес. Бұл ертең жүздеген мың пайдаланушы көретін өнім үшін жауапкершілік. Ал бұл жердегі басты жау — күрделі инфрақұрылым да, легаси-код та емес. Басты жау — дүрбелең.
Таймер сықырлап тұрғанда, ал ми логикалық ойлаудан бас тартқанда, тәжірибелі маман да ақымақ қателік жіберуі мүмкін. Неліктен бұл орын алатынын және оған қалай қарсы тұру керектігін қарастырайық.
Кез келген ірі компанияда айтылмаған ереже бар: әзірлеу созылуы мүмкін, ал тестілеу — жоқ. Неге? Себебі релиздің мерзімі алдын ала белгіленеді, және бәрі QA командасына соңғы шеп ретінде қарайды.
Корпоративті ортаның басты тұзағы осында: сені материал беру жылдамдығына қарамастан жұмыс істеуі тиіс сүзгі ретінде қабылдайды. Ал бұл сүзгі бітелгенде, стресс басталады.
Маңыздысын түсін: мәселе сенің дағдыларыңда емес. Мәселе мынада: шектеулі уақыт екі қауіпті күйді — асығыстық пен тоқырауды тудырады.
Тестілеуші қысымға ұшырағанда, оның мінез-құлқы әдетте екі үлгінің біріне ауытқиды.
Бірінші үлгі — әбігерлік. Адам бәрін қатарынан тексере бастайды, жүйенің әртүрлі бөліктеріне жабысады, ешқайда үлгермейді, көптеген үстірт баг-репорттар жасайды, оның жартысы қайталанбайды.
Екінші үлгі — қатып қалу. Бұл жұмыс көлемінің соншалықты үлкен болғаны сонша, ми оны қабылдаудан бас тартады. Сен 50 кейстен тұратын тізімге қарап, неден бастарыңды білмейсің. Уақыт өтеді, ал өнімділік нөлге ұмтылады.
💡 Кеңес: Екі күй де бір әдіспен емделеді: 30 секундқа тоқтап, қағазға ең маңызды үш тексеруді жаз. Миыңда емес, қағазда. Үш тармақтан тұратын тізімді көргенде, ми ақыл-ой ботқасынан арылып, тынышталады. Бұл сиқыр емес, физиология: когнитивті жүктеменің төмендеуі кортизол деңгейін төмендетеді.
Дәл қазір байқап көр. Бір сағат ішінде күрделі модульді тестілеуің керек деп елестет. Барлық 40 кейс туралы ойлама. Егер жұмыс істемесе, жүйені құлататын үшеуін таңда. Бұл сенің жоспарың болады.
Корпорацияларда «таза парақпен» жұмыс істеу сирек кездеседі. Әдетте сен коды бес жыл бойы жазылған жобаға келесің, кейбір модульдердің авторлары жұмыстан кеткен, ал құжаттама — «// TODO: fix later» стиліндегі түсініктемелер.
Легаси-кодпен жұмыс — стрестің негізгі көздерінің бірі. Себебі сен жүйенің қалай әрекет етуі керектігін түсінбейсің. Сен оғаш мінез-құлықты көресің, бірақ бұл баг па, әлде біреудің алдын ала ойластырған фичасы ма — білмейсің.
Мұндай жағдайда қалай есіңнен адаспауға болады? Жалғыз жұмыс істейтін тәсіл — болжауды тоқтату. Егер жүйенің мінез-құлқы сұрақ тудырса, осы кодты жазған адамнан сұра. Егер ондай адам болмаса — «нақтылау қажет» деген белгімен баг-репорт аш.
Өзің жобаламаған нәрсе үшін жауапкершілік алма.
Көптеген тестілеушілер өз жұмысы тек багтарды табу деп санайды. Шын мәнінде, үлкен компанияда табыстың 50% — мәселені дұрыс жеткізе білу.
Жағдайды есіңе түсір: сен баг табасың, оны егжей-тегжейлі сипаттайсың, скриншоттар, логтар, видео тіркейсің. Ал әзірлеуші тикетті «қайталанбайды» деген белгімен жабады. Таныс па? Мәселе көбінесе багта емес, тұжырымдамада.
Бірақ кері жағы да бар: менеджмент алдында сапаны қорғау қажет болғанда. Егер продакт «релиз ертең, багтар маңызды емес» десе, сенің міндетің — «сапаны» бизнес тіліне аудару.
Айтпа: «Бұл баг пайдаланушы тәжірибесін бұзады». Айт: «Егер бұл баг продқа түссе, бірінші күні біз қолдау қызметіне 500 шағым аламыз, бұл компанияға X рубльге түседі».
💡 Кеңес: Багтың құнын есептеуді үйрен. Абстрактілі бірліктермен емес, ақшамен. Клиентті жоғалту, саппорт уақыты, бедел тәуекелдері — мұның бәрі сандарға айналады. Менеджмент тек сандарды түсінеді.
Корпорацияда тестілеуші болып жұмыс істеу — бұл спринт емес, марафон. Бірақ көбі апаттық режимде өмір сүреді: әр релиз — соңғысындай, әр түн — кезекшілік, әр дүйсенбі — шабуыл.
Тестілеушілердегі күйзеліс белгілері ерекше:
Мұны қалай болдырмауға болады? Жалғыз жұмыс істейтін тәсіл — ағымда еріп кетпеу. Әр үш ай сайын өзіңе сұрақ қой: «Осы уақыт ішінде мен не үйрендім?». Егер жауап — «ештеңе» болса, сен өсуді тоқтаттың. Ал корпорацияда өсудің болмауы — баяу деградация.
Енді ең бастысы — бес жыл бойы «жай тестілеуші» позициясында тұрып қалмау үшін қайда қозғалу керек.
Үлкен корпорацияда QA-маманның мансаптық жолы әдетте былай көрінеді:
Бірақ бұл формальды баспалдақтар. Нақты өсу — тапсырмалар ауқымының өзгеруі.
Нақты қадамдар:
Автоматтандыру — егер сен әлі бірде-бір автотест жазбаған болсаң, нарықтан бес жылға артта қалдың. Бағдарламалау гуруы болу міндетті емес, бірақ тест жазу үшін Python немесе Java негізгі деңгейі — must have.
Архитектураны түсіну — тек UI-ге қарауды тоқтат. Бэкенд логикасының қалай ұйымдастырылғанын, қандай микросервистер қандай процестерге жауап беретінін, тар жерлердің қайда екенін зертте. Архитектураны түсінгенде, сен багтарды олар экранда пайда болғанға дейін табасың.
Процесті басқару — тест-жоспарлар құруды, еңбек шығынын бағалауды, тапсырмаларды басымдықтауды үйрен. Бұл дағдылар сені «жай тестерлер» тобынан бөліп шығарады.
[ADVICE] Қолмен тестілеуден архитектураға өткің келсе, бір фреймворктан баста. Мысалы, Selenium немесе Cypress
