Zamonaviy QA testorning 2 qanoti. Bug'larni eng arzon topish va real foydalanuvchilardan o'rganish. Middle/Senior darajasiga ko'tariladigan asosiy tushunchalar.
Tasavvur qiling: loyiha hayoti โ bu bir chiziq. Chap tomonda talablar yig'ish, o'ng tomonda production (foydalanuvchi). O'rtasida esa โ dasturlash va testing.
Traditional yondashuvda QA o'rta-oxirida turadi โ dasturchilar kodni yozadi, keyin QA test qiladi. Lekin zamonaviy QA ikki tomonga ham siljiydi:
Shift Left Testing โ testorni chap tomonga siljitish. Ya'ni testor dasturlash boshlanishidan oldin qatnashadi โ talablar, design, architectura bosqichlarida.
Oddiy qilib: Bug'larni kod yozilishidan oldin topishga urinish. Eng arzon va oson.
QA oxirida keladi, kod tayyor bo'lgach.
QA birinchi kundan qatnashadi.
Bu Shift Left'ning asosiy iqtisodiy dalili. Bug qayerda topilsa, shuncha kam pul ketadi:
Agar siz Junior QA sifatida 3 Amigos meeting'da qatnashib, talablardagi muammoni topsangiz โ kompaniyaga ming dollar tejagandirsiz. Bu sizning qimmatingizni 10 barobarga oshiradi.
QA qanday Shift Left qiladi? 5 ta asosiy amaliyot:
Har bir amaliyotni to'g'ri siljish turi bilan bog'lang.
Shift Right Testing โ testorni o'ng tomonga siljitish. Ya'ni test production'ga chiqqandan keyin ham davom etadi โ real foydalanuvchilar bilan.
Oddiy qilib: "Test labda tugadi, endi real dunyoda kuzatamiz" degan falsafa.
Qanchalik ko'p test qilsak ham, real foydalanuvchilar har doim kutilmagan narsalar qiladi:
Junior QA odatda Monitoring va User Feedbackda qatnashadi. Middle QA A/B testingni tashkil qiladi. Canary va Chaos esa Senior/Principal QA darajasidagi ishlar.
Ikkala yondashuvni solishtiring. QA qaysi bosqichlarda ishlaydi?
Zamonaviy QA ikkala strategiyani ham ishlatadi. Bu โ "full-cycle QA" deb ataladi.
โ Shift Left bosqichi:
โ Traditional testing:
โ Shift Right bosqichi:
Shift Left + Traditional + Shift Right = to'liq sifat strategiya. Har bosqichda buglarni topish va foydalanuvchi tajribasini yaxshilash.
1-qadam: Bug kartochkasini bosing. 2-qadam: Qaysi bosqichda topilganini tanlang.
Dushanba, 10:00. Click yangi "Do'stga pul yuborish" (P2P) funksiyasini boshlamoqchi. Siz QA Lead sizsiz. PO sizga keldi: "2 haftadan keyin chiqaramiz!"
Savol: Qanday strategiya tanlaysiz โ to'liq sifat uchun?
Endi amaliyotda sinab ko'ramiz. TestShop uchun 3 ta Shift Left topshirig'i bor.
Bu safar kod yozilishidan oldin ish qilasiz โ xuddi haqiqiy jamoa kabi.
๐ TestShop'ga o'tishBu 3 ta vazifa โ Middle QA darajasidagi ish. Ularni Google Docs'da to'plab, intervyuda: "Men Shift Left va Shift Right strategiyalarini amaliyotda ishlatganman" deb ayta olasiz. Bu Junior'dan ajralib turish uchun kuchli afzallik.
Shift Left/Right โ zamonaviy intervyulardagi eng muhim mavzular. 7 ta professional javob.
๐ก Har savol ustiga bosing โ professional javobni ko'rasiz.
Javob: "Shift Left Testing โ testorni loyihaning erta bosqichlariga siljitish. Talablar, design bosqichlarida qatnashish."
Nega muhim?
Pro javob: "Men 3 Amigos meetinglarda doim qatnashaman va talablarda savollar beraman โ bu Shift Left'ning eng asosiy amaliyoti."
Javob: "Shift Right Testing โ test production'dan keyin ham davom etadi. Real foydalanuvchilar bilan o'rganish."
5 ta asosiy amaliyot:
Misol: "Uzum yangi funksiyani avval Sergeli tumanida test qiladi (canary), monitoring qiladi, keyin butun shaharga chiqaradi."
Javob: "Bug turli bosqichlarda boshqa narx turadi โ juda katta farq."
Aniq raqamlar (Boehm's Law):
Pro javob: "Shuning uchun Shift Left juda foydali. Har erta topilgan bug โ kompaniyaga katta tejamkorlik. Men requirement review'da bitta muammoni topsam, kompaniyaga minglab dollar tejadim."
Javob:
Farqi:
Misol: "Uzum'da A/B โ eski va yangi tugmani solishtirish. Canary โ yangi to'lov tizimini avval 5% foydalanuvchilarga chiqarish."
Javob: "Junior QA ham Shift Left ishtirok eta oladi, faqat boshlang'ich darajada:"
Muhim: "Pair programming yoki Chaos Engineering โ Middle/Senior darajasi. Junior faqat asosiy savollar berish bilan ham Shift Left qila oladi."
Pro javob: "Shu usullar orqali men bir necha marta talablarda muammo topgan edim โ dasturchilar hatto 'rahmat' deb aytishgan."
Javob: "Chaos Engineering โ tizimga qasddan zarar berib, uning chidamliligini sinash. Netflix tomonidan mashhur qilingan."
Misollar:
Asboblar: Netflix Chaos Monkey, Gremlin.
Muhim: "Bu faqat yirik kompaniyalar uchun (Uzum, Click). Kichik loyihalarda kerak emas. Junior QA faqat atamani biladi, amalda ishlamaydi."
Javob shabloni (halol): "Men Junior QA sifatida quyidagi amaliyotlar bilan tanishman:"
Muhim: Halol bo'ling. "Men hamma narsani bilaman" โ yolg'on. "Bunisini bilaman, bunisini o'rganayapman" โ professional.
Bu darsdan eslab qolishingiz kerak bo'lgan eng muhim g'oyalar