Sinovning asosiy muammosi

kirish

Xabrovskliklar, xayrli kun. Hozir men fintech kompaniyasida QA yetakchisi vakansiyasi uchun test topshirig‘ini hal qilyapman. To'liq nazorat ro'yxati va elektr choynakni sinab ko'rish uchun sinov holatlari misollari bilan test rejasini yaratish uchun birinchi vazifani ahamiyatsiz tarzda hal qilish mumkin:

Ammo ikkinchi qism savol bo'lib chiqdi: "Barcha testerlar uchun ularning samaraliroq ishlashiga xalaqit beradigan umumiy muammolar bormi?"

Aqlga kelgan birinchi narsa, sinov paytida duch kelgan barcha ko'p yoki kamroq sezilarli muammolarni sanab o'tish, kichik narsalarni o'chirish va qolganlarini umumlashtirish edi. Ammo men tezda tushunib etdimki, induktiv usul "barcha" ga taalluqli bo'lmagan savolga javob beradi, lekin eng yaxshi holatda, faqat testerlarning "ko'pchiligi" uchun. Shuning uchun men unga boshqa tomondan, deduktiv tarzda yondashishga qaror qildim va shunday bo'ldi.

aniqlash

Yangi muammoni hal qilishda men qiladigan birinchi narsa bu nima ekanligini tushunishga harakat qilishdir va buning uchun men uni qo'zg'atadigan so'zlarning ma'nosini tushunishim kerak. Tushunish uchun asosiy so'zlar quyidagilar:

  • muammo
  • sinovchi
  • sinovchi ishi
  • sinovchi samaradorligi

Keling, Vikipediyaga va aqlga murojaat qilaylik:
Muammo (qadimgi yunoncha pōlēma) keng ma'noda - o'rganish va hal etishni talab qiluvchi murakkab nazariy yoki amaliy masala; fanda - har qanday hodisa, ob'ektlar, jarayonlarni tushuntirishda qarama-qarshi pozitsiyalar ko'rinishida paydo bo'ladigan va uni hal qilish uchun adekvat nazariyani talab qiladigan qarama-qarshi vaziyat; hayotda muammo odamlarga tushunarli shaklda shakllantiriladi: "Men nimani bilaman, qanday qilib bilmayman", ya'ni nimani olish kerakligi ma'lum, lekin buni qanday qilish noma'lum. . Kech kelgan. lat. muammo, yunon tilidan. rōbēluma "oldinga tashlangan, oldiga qo'yilgan"; dan “oldinga tashlang, oldingizga qo'ying; ayblash".

Bu juda mantiqiy emas, aslida "muammo" = "hal qilish kerak bo'lgan har qanday narsa".
Sinovchi - komponent yoki tizimni sinovdan o'tkazishda ishtirok etadigan mutaxassis (biz turlarga bo'linmaymiz, chunki biz barcha testerlarga qiziqamiz), uning natijasi:
Testerning ishi — test o‘tkazish bilan bog‘liq tadbirlar majmui.
Samaradorlik (lot. effectivus) - erishilgan natija va foydalanilgan resurslar o'rtasidagi bog'liqlik (ISO 9000: 2015).
Natija - sifat yoki miqdor jihatdan ifodalangan harakatlar (natija) yoki hodisalar zanjiri (ketimi) oqibati. Mumkin natijalarga afzallik, kamchilik, daromad, yo'qotish, qiymat va g'alaba kiradi.
"Muammo" bilan bo'lgani kabi, kam ma'no bor: ish natijasida paydo bo'lgan narsa.
resurs - shaxs yoki odamlarning har qanday faoliyatini amalga oshirishning miqdoriy jihatdan o'lchanadigan imkoniyati; kerakli natijaga erishish uchun ma'lum o'zgarishlardan foydalanishga imkon beradigan shartlar. Sinovchi shaxs bo'lib, hayotiy resurslar nazariyasiga ko'ra, har bir kishi to'rtta iqtisodiy aktivning egasidir:
naqd pul (daromad) qayta tiklanadigan resursdir;
energiya (hayot kuchi) qisman qayta tiklanadigan resursdir;
vaqt qat'iy va asosan qayta tiklanmaydigan resursdir;
bilim (axborot) qayta tiklanadigan resurs, u o'sishi va yo'q bo'lib ketishi mumkin bo'lgan inson kapitalining bir qismidir.[1].

Shuni ta'kidlashni istardimki, bizning holatlarimizda samaradorlikning ta'rifi mutlaqo to'g'ri emas, chunki biz qanchalik ko'p bilimdan foydalansak, samaradorlik shunchalik past bo'ladi. Shuning uchun men samaradorlikni "erishilgan natijalar va sarflangan resurslar o'rtasidagi nisbat" deb qayta ta'riflagan bo'lardim. Keyin hamma narsa to'g'ri: ish paytida bilim behuda ketmaydi, lekin u sinovchining yagona tubdan qayta tiklanmaydigan resursi - uning vaqtini sarflaydi.

qaror

Shunday qilib, biz sinovchilarning ish samaradorligiga putur etkazadigan global muammolarini qidirmoqdamiz.
Sinovchining ishiga sarflanadigan eng muhim resurs - bu uning vaqti (qolganini u yoki bu tarzda qisqartirish mumkin) va samaradorlikni to'g'ri hisoblash haqida gapirishimiz uchun natijani ham vaqtga qisqartirish kerak. .
Buning uchun sinovchi o'z ishi orqali hayotiyligini ta'minlaydigan tizimni ko'rib chiqing. Bunday tizim - bu loyiha, uning jamoasi sinovchini o'z ichiga oladi. Loyihaning hayot aylanishi taxminan quyidagi algoritm bilan ifodalanishi mumkin:

  1. Talablar bilan ishlash
  2. Texnik shartlarni shakllantirish
  3. Rivojlanish
  4. Viktorina
  5. Ishlab chiqarishga chiqarish
  6. Yordam (1-bandga o'ting)

Bunday holda, butun loyihani rekursiv ravishda bir xil hayot aylanishiga ega bo'lgan kichik loyihalarga (xususiyatlarga) bo'lish mumkin.
Loyiha nuqtai nazaridan, unga qancha vaqt sarflansa, uni amalga oshirish samaraliroq bo'ladi.
Shunday qilib, biz loyiha nuqtai nazaridan testerning maksimal mumkin bo'lgan samaradorligini aniqlashga keldik - bu sinov uchun vaqt nolga teng bo'lgan loyihaning holati. Barcha sinovchilar uchun umumiy muammo - bu vaqtga erisha olmaslik.

Bu bilan qanday kurashish mumkin?

Xulosalar juda aniq va ko'pchilik tomonidan uzoq vaqtdan beri foydalanilgan:

  1. Ishlab chiqish va sinov deyarli bir vaqtning o'zida boshlanishi va tugashi kerak (bu odatda bo'lim tomonidan amalga oshiriladi QA). Ideal variant - ishlab chiqilayotgan barcha funksiyalar tayyor bo'lgunga qadar avtotestlar bilan qoplanib, regressiya (va iloji bo'lsa, oldindan topshiriq) testlariga o'tkaziladi. CI.
  2. Loyiha qanchalik ko'p xususiyatlarga ega bo'lsa (u qanchalik murakkab bo'lsa), yangi funksiya eskisini buzmasligini tekshirish uchun ko'proq vaqt sarflash kerak bo'ladi. Demak, loyiha qanchalik murakkab bo'lsa, ko'proq avtomatlashtirish talab qilinadi regressiya testi.
  3. Har safar ishlab chiqarishdagi xatolikni o'tkazib yuborganimizda va foydalanuvchi uni topsa, biz 1-banddan boshlab loyihaning hayot aylanishiga qo'shimcha vaqt sarflashimiz kerak (Talablar bilan ishlash, bu holda foydalanuvchilar). Xato etishmayotganligining sabablari umuman noma'lum bo'lgani uchun bizda faqat bitta optimallashtirish yo'li qoladi - foydalanuvchilar tomonidan topilgan har bir xato u qayta ko'rinmasligiga ishonch hosil qilish uchun regressiya testiga kiritilishi kerak.

Manba: www.habr.com

a Izoh qo'shish