29.04.2023
6 min read

ՏՏ ոլորտի աճը և Manual QA-ի կարևորությունը

Այսօր Manual QA-ի կարևորությունը կասկածի տակ են առնում տարբեր մասնագետներ։ Ասում են՝ մասնագետների անհրաժեշտությունը նվազում է՝ նորագույն տեխնոլոգիաների զարգացման ու վիրտուալ գործիքների ի հայտ գալու պատճառով։
Սակայն բացվող հաստիքներն ու ընկերությունների կողմից մասնագետների պահանջարկը լրիվ հակառակն են հուշում։

Արդյո՞ք Machine Learning-ը, AI-ն ու նոր ստեղծվող ու զարգացող այլ երևույթները կփոխարինեն Manual QA-ին: Կարճ՝ ոչ, բայց ամեն ինչի մասին՝ հերթով։ 

1990-2003-ին software testing ծառայություններ մատուցող ընկերությունները սկսեցին փնտրել ծրագրային գործիքներ, որոնք հետագայում օգնելու էին թեստավորողներին արագ և առանց ջանքերի թեստավորում կատարել:
Այս ժամանակահատվածը լավագույն փոփոխությունների շրջանն էր փորձարկողների համար, քանի որ օգնեց նրանց կատարել թեստավորում regression testing-երի և smoke testing-երի հիման վրա:
Ավտոմատացումը շատ օգնեց թեստավորողներին և թույլ տվեց իրենց աշխատանքում կենտրոնանալ ավելի ֆունկցիոնալ թեստային դեպքերի և գործառույթների վրա:

Թյուր կարծիք է, որ Manual թեստավորումը կաշխատի միայն կարճաժամկետ նախագծերի կամ խիստ ժամկետներով նախագծերի համար։  

Manual QA թեստավորումն օգուտ է տալիս նախագծին մի քանի առումներով՝

  • Ավելի լավ է փոքր խմբաքանակներ փորձարկել՝ դա ավելի ծախսարդյունավետ մեթոդ է ու թույլ է տալիս մանրակրկիտ աշխատանք կատարել: 
  • Ծրագրային ապահովման թեստավորման լավագույն ընկերությունները փաստում են, որ Manual թեստավորումը լավագույնս է աշխատում UI|UX գործընթացների համար 
  • Ծրագրի սկզբնական փուլերում փոփոխությունները մշտական բնույթ են կրում, և այդ դեպքում Manual թեստավորումը լավագույնս է աշխատում: 

Ո՞վ է QA մասնագետը։ Manual QA-ի կարևորությունը

Մինչև հասկանալը, թե որքանո՞վ է այսօր խնդիր Manual QA-ի կարևորությունը և QA մասնագետի դերը, եկեք նախ հասկանանք, թե ո՞վ է նա ու ինչ գործառույթներ է իրականացնում։
Մենք բոլորս ամեն օր օգտագործած տարբեր հավելվածներում հանդիպում ենք մեկ կամ մի քանի սխալի։
Հավելված, կայք կամ այլ պրոդուկտի սխալներ գտնելու գործընթացը վստահված է հենց QA մասնագետներին։

Manual QA մասնագետը ստեղծում է թեստեր, որոնք բացահայտում են ծրագրային ապահովման հետ կապված խնդիրները մինչև արտադրանքի բուն մեկնարկը:

Այս թեստերը իրենցից ենթադրում են մշակել և գործարկել նոր թեստեր և դրանց արդյունքների մասին զեկուցել շահագրգիռ կողմերին, որոնք կհամագործակցեն ծրագրային սխալները կամ խնդիրները շտկելու համար:

QA Engineer-ի առաջնային պարտականությունն է կանխել թերությունները:
Բացի այդ, նա պատասխանատու է կոդում առկա սխալների հայտնաբերման և վերացման համար՝ նախքան այն հաճախորդներին տրամադրելը:
Նման սխալները կարող են առաջանալ տարբեր խնդիրների պատճառով, ինչպիսիք են տվյալների անբավարար մուտքագրումը կամ ոչ պատշաճ ձևավորված ինտերֆեյսի որևէ տարրը:

QA Engineer-ը պետք է լինի շատ կազմակերպված և արագ կարողանա ճշգրտել առաջնահերթությունները՝ մեծ ուշադրություն դարձնելով մանրամասներին:

Իսկ ի՞նչ տարբերություն Manual և Automation թեստավորումների միջև։ Եկեք հասկանանք, թե ինչպե՞ս են դրանք աշխատում։

Manual և Automation. Ո՞րն է ավելի լավ աշխատում 

Ծրագրային ապահովման փորձարկման տարբեր մոտեցումներ կան, բայց ընդհանուր առմամբ դրանք կարելի է բաժանել հիմնակա 2-ի՝ Manual և Automation:
Կարող ենք մտածել, որ Automation-ի համար սահմանափակումներ չկան, և ամեն ինչ այսօր հնարավոր է ավտոմատացնել:
Թեև փորձարկման ավտոմատացման գործիքները և շրջանակները չափից արագ են զարգանում ու դրանով իսկ կասկածի տակ դնում Manual QA-ի կարևորությունը, այնուամենայնիվ ամեն ինչ չէ, որ կարող է և պետք է ավտոմատացված լինի:
Բազմաթիվ դեպքերում ավելի նախընտրելի է ընտրել փորձարկման Manual տարբերակը: 

Հաշվի առնելով Automation փորձարկման ժամանակ մարդկային գործոնի բացակայությունը, վտանգ է ստեղծվում, թե որևէ բան հնարավոր է մոռանալ, անտեսել կամ չհիշել, ինչը Manual փորձարկողը կկարողանա հայտնաբերել շատ ավելի արագ ու հեշտ:

Manual փորձարկման ժամանակ կարող եք ստանալ հետադարձ կապ, ինչը հնարավոր չէ Automation փորձարկմամբ կատարվող գործընթացների դեպքում:
Այլ կերպ ասած, ուղղակիորեն շփվելով հավելվածի հետ՝ փորձարկողը կարող է համեմատել ակնկալվող արդյունքը իրականի հետ և թողնել առաջարկություններ։

Մարդը միշտ պետք է փորձարկի այն հավելվածները, որոնք մարդիկ օգտագործում են: Իրատեսական չէ ավտոմատացնել բոլոր թեստերը: 

Manual թեստավորումն ակնհայտորեն ավելի հարմար է հետևյալ դեպքերի համար.

  • Հետախուզական թեստեր (Exploratory tests)
  • Օգտագործելիության թեստավորում (Usability testing)
  • Ad-hoc թեստեր

Սրանք դասական բացատրություններն էին նրա, թե ինչպես են փորձարկման 2 տարբերակներն աշխատում։
Այսօր նորագույն տեխնոլոգիաներն ու արհեստական բանականությամբ աշխատող յուրաքանչյուր բան այնքան արագ են զարգանում, որ հատկապես Manual QA-ն ու այդ մասնագետները վտանգ են զգում, որ գուցե մասնագիտությունը կորցնի իր ակտուալությունը։

Բայց արդյո՞ք դա հնարավոր է։

Ի՞նչ փոփոխություններ են այսօր տեղի ունենում ի վնաս Manual QA-ի

Նորագույն տեխնոլոգիաներն ու արհեստական բանականությունն այսօր մտել է յուրաքանչյուր մարդու կյանք:
Վիրտուալ օգնականներ, FaceID, չաթ-բոտեր, որոնման համակարգեր, առանց վարորդի մեքենաներ. այս ամենը, ինչպես նաև շատ այլ բաներ, սնուցվում են արհեստական ինտելեկտով և մեզանից շատերի կողմից ընդունված են:

Արհեստական ինտելեկտը ներթափանցել է և առատորեն օգտագործվում է ամենատարբեր ոլորտներում։ Տարօրինակ կլիներ, եթե այն օգտագործելու հնարավորությունները չդիտարկվեին QA ոլորտում ևս:

AI (AI), VR, AR, Data Science և ռոբոտային գործընթացների ավտոմատացումը շատ արագ է ընթանում և հսկայական տեղեր սկսում գրավել տեխնոլոգիական և ծրագրային ապահովման ոլորտում:

QA մասնագետների մտավախությունն այն է, որ Manual QA-ի կարևորությունը կնվազի ու այսօր տեղի ունեցող փոփոխությունները կփոխարինեն նրանց աշխատանքին:
Վախենալու փոխարեն պետք է սովորել նոր տեխնոլոգիաներ ու քայլել դրանց զուգահեռ: Ապագայում QA-ի աշխատանքին անհրաժեշտ կլինի գիտելիքներ՝ նորագույն տեխնոլոգիաների կիրառմամբ թեստավորում կատարելու համար:
Փորձագետները կարծում են, որ AI-ն ավելի կհեշտացնի թեստավորումը, ինչը լավ կլինի հենց QA մասնագետների համար։

Եթե Automation QA-ը Manual QA-ին չկարողացավ դուրս մղել շուկայից, ապա AI-ի ինտեգրումը ևս չի կարողանա դրա պատճառը դառնալ:
Այս ամենին հակառակ՝ AI-ը կստեղծի պարարտ հող բարելավելու փորձարկման բոլոր գործընթացները:
Այնուամենայնիվ, դեռևս կան ու կլինեն ոլորտներ, որոնք միշտ պետք է Manual թեստավորում անցնեն:
Ի՞նչ են AI (AI), VR, AR-ը՝ կարդացեք հոդվածում:

Շուտով AI-ն և ML-ն ավելի կինտեգրվեն QA-ին։
Եթե խոսենք QA աշխատատեղերի մասին, ապա AI-ն և ML-ն տեխնոլոգիաները ունեն հնարավորություն փոխարինելու Manual ծրագրային ապահովման փորձարկիչներին: 

QA ոլորտից մարդկային գործոնը հեռացնելը հեշտ չէ, որոշ դեպքերում՝ անհնար է, բայց կան իրավիճակներ, երբ դա լրիվ իրատեսական կարող է լինել: 

Այս փոփոխություններն ու նորամուծությունները չպետք է դառնան պատճառ, որպեսզի QA մասնագետները դուրս գան ոլորտից կամ փոխեն իրենց մասնագիտությունը։
Անհրաժեշտ է անել ճիշտ հակառակը՝ սովորել նոր հմտություններ և իրենց հմտությունները զարգացնել՝ անընդհատ փոփոխվող տեխնոլոգիաների տեմպերին համապատասխանելու համար:

Ինչո՞ւ չի կարող պակասել Manual QA-ի կարևորությունը և, որ ոչինչ ամբողջովին չի կարող փոխարինել Manual QA-ին 

Հասկանանք, թե, առհասարակ, ինչու է մեզ անհրաժեշտ Manual QA

  • Հաճախորդի կարծիք (Feedback) – Ծրագրային ապահովման փորձարկողի ամբողջ աշխատանքը կարող է դիտվել որպես պոտենցիալ օգտագործողի արձագանք:
  • UI-ի հետադարձ կարծիք (Feedback) – Մեր օրերում UI-ը հսկայական դեր է խաղում, այնպես որ կարող եք ամբողջությամբ ստուգել այն միայն manual տարբերակով:
  • Մատչելիություն – Կարճաժամկետ հեռանկարում Manual թեստավորումն ավելի էժան է, քան automation գործիքները:
  • Իրական ժամանակի թեստավորում – Փոքր փոփոխությունները կարող են անմիջապես վերլուծվել՝ առանց ահվելյալ գործիքների կիրառման:
  • Հետազոտության փորձարկման հնարավորություն – Դրա նպատակն փորձարկել հավելվածի տարբեր հնարավորությունները:
    Այս հնարավորությունն ունի manual-ը ու հենց իր միջոցով է հնարավոր լավագույն արդյունք ստանալ։ 

7 օրինակ, որտեղ չի կարող կիրառվել ուրիշ ոչինչ, բացի Manual QA-ից .

Usability Testing – Թեստավորումը պետք է կատարվի՝ համոզվելու համար, որ հավելվածն օգտագործողի համար հարմար է:
Manual թեստավորումը միակ միջոցն է, որը օգտատերը կարող է հեշտությամբ իրականացնել հավելվածի միջոցով:
Անկախ նրանից, թե որքան հեռու կարող է AI-ն մեզ տանել, այն չի կարող ապահովել օգատգործողի այնպիսի փորձ, ինչպիսին Manual-ի դեպքում է:

Exploratory– Այս տեսակի թեստավորումը նույնպես պետք է կատարվի բացառապես անձի կողմից: Այս տեսակի թեստավորման ժամանակ կրեատիվությունն ու բնազդը կփոխարինեն պահանջներին և փորձարկման դեպքերին:

Ad hoc թեստավորում – Այս արագ, տեղում փորձարկման համար անհրաժեշտ է մարդկային փոխազդեցություն:
Կրկին, քանի որ չկան փորձարկման դեպքեր կամ պահանջներ, այն ավտոմատացնելու միջոց չի լինի:
Ավելին, դա չի կարող երաշխավորել ավտոմատացում:

Ծրագրաշարը դեռ մշակման վաղ փուլերում է Manual թեստավորումը հաճախ օգտագործվում է գործընթացի սկզբում՝ ծրագրաշարի հիմնական ֆունկցիոնալությունն ու օգտագործելիությունը հաստատելու համար: 

Ծրագրաշարն ունի բարդության ցածր մակարդակ – Համեմատաբար պարզ և մեծ թվով հնարավորություններ կամ ֆունկցիոնալություն չունեցող ծրագրակազմի համար Manual թեստավորումը կարող է ավելի արդյունավետ և ծախսարդյունավետ լինել։

Ծրագրաշարը պահանջում է օգտատիրոջ փոխգործակցության բարձր մակարդակ Որոշ ծրագրային հավելվածներ, ինչպիսիք են խաղերը կամ ինտերակտիվ կրթական ծրագրերը, կարող են պահանջել օգտատիրոջ փոխգործակցության բարձր մակարդակ և կարող են ավելի հարմար լինել Manual փորձարկման համար:

Ծրագրաշարը պահանջում է ստեղծագործական կամ հետախուզական թեստավորում – Manual թեստավորումը կարող է ավելի արդյունավետ մոտեցում լինել թեստավորման սցենարների համար, որոնք ավելի բաց են կամ պահանջում են ստեղծագործական ավելի բարձր մակարդակ, քանի որ այն թույլ է տալիս փորձարկողին ուսումնասիրել տարբեր թեստային դեպքեր և մոտեցումներ:

5 պատճառ, թե ինչո՞ւ է Manual QA-ը կարևոր 

1. Ժամանակ

Չնայած automation թեստավորումները կարող են ավելի արագ իրականացվել, բայց դանք անելու համար անհրաժեշտ է շատ ժամանակ։
Եթե նախագիծը շատ բարդ է և բազում փոխկապակցված բաղադրիչներով automation թեստավորումն ավելի շատ ժամանակ և ռեսուրսներ կխլի:
Որոշ դեպքերում կարող է չափազանց թանկ լինել։ 

2. Մարդկային հպում

Վերջնական օգտատերերի համար հավելվածի տեսքը նույնքան կարևոր է, որքան դրա գործառույթների ճիշտ աշխատանքը:
Եթե օգտատիրոջ ինտերֆեյսը բարդ է, ավելի արագ և էժան է փորձարկել այն Manual և ավտոմատացնել միայն SDK-ն և/կամ API-ն՝ համոզվելու համար, որ բիզնես տրամաբանությունը հետընթաց չունի: 

4. Անվտանգություն

Բարդ նախագծերի համար պետք է ուշադիր գնահատել բոլոր թույլտվությունները, որոնք անհրաժեշտ են թեստի կատարման համար:
Automation փորձարկման դեպքում հնարավոր է լիարժեք մուտք չունենալ դեպի համակարգ և սահմանափակումներ լինեն այն համակարգերի և միջավայրերի վերաբերյալ, որոնցում փորձարկողին տրվել է մուտք: 

6. Ամեն ինչ չէ, որ կարելի է ավտոմատացնել

Եթե ունեք շարժական արտադրանք և պետք է հաստատեք, թե ինչպես է այն աշխատում բազմաթիվ տարբեր սարքերի վրա, դա ավտոմատացնելը հեշտ չէ։
Կարող են լինել իրավիճակներ, երբ չկան ավտոմատացման գործիքներ հատուկ հարթակի կամ սարքի տեսակի համար:

7. Կայունություն

Իհարկե, թեստային դեպքերն ու սցենարները պետք է ամեն դեպքում ստուգվեն՝ ցանկալի արդյունքները պահպանելու համար, բայց երբ հավելվածն անկայուն է, ավտոմատացված թեստերի արդյունքներն ավելի հավանական է, որ կեղծ լինեն:
Եթե հավելվածը կայուն է, ապա ավտոմատացված թեստերը նույնպես կայուն և օբյեկտիվ կլինեն:
Մինչ այդ ավելի լավ է ձեռքով սկսել հավելվածի թեստավորումը՝ արժեքավոր արդյունքներ ստանալու համար։
Բայց երբ ապրանքը շուկա դուրս գա, և դուք պետք է ապահովեք, որ աճող թարմացումների միջև հետընթաց չկան, թեստային ավտոմատացումը կարող է շատ օգտակար լինել:

Ամփոփում

Ցանկացած տեսակի թեստավորում ծրագրային ապահովման մշակման ոլորտում անփոխարինելի բաղադրիչ է, և ծրագրային ապահովման վրա անհրաժեշտ և համապատասխան թեստերի անցկացումը երաշխավորում է արտադրանքի բարձրորակ լինելը:
Ե՛վ Manual, և՛ automation թեստավորումն ունեն իրենց առավելությունները, և երկուսն էլ պետք է լինեն QA ռազմավարության մի մասը:

Բաժանորդագրվեք՝ մշտապես տեղեկացված լինելու համար

Ձեզ կարող է հետաքրքրել

Մեկնաբանություն