Ինչպես հաղթահարել արագաշարժ փորձարկման մարտահրավերները

Որո՞նք են արագաշարժ փորձարկման ամենատարածված մարտահրավերները, որոնց բախվում են ծրագրային ապահովման փորձարկողները կամ QA- ն արագաշարժ նախագծերում: Ինչպիսի՞ն է ճարպիկ թիմում QA լինելը:

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

Agարպիկ նախագծերում ՈԱ-ի կարևորագույն տարրերից մեկը լավ զարգացում ունենալու ճկուն զարգացման մեթոդաբանության և գործընթացների մասին է: Շատ ճարպիկ ընկերություններ հետևում են որակյալ ծրագրակազմ մատակարարելու Scrum համակարգին, այնպես որ համոզվեք, որ ծանոթ եք Scrum- ին:




Agile Testing մարտահրավերները

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

Այս հոդվածում ես թվարկում եմ ճկուն նախագծերում QA- ի արագաշարժ փորձարկման մի քանի ամենատարածված մարտահրավերները և ինչպես դրանք հաղթահարել:


Պահանջների փոփոխություն / Վերջին րոպեի փոփոխություններ

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

Պահանջի այս փոփոխությունները և վերջին րոպեի հարցումները կարող են ազդել փորձարկման շրջանակների վրա, ինչը կարող է տապալել փորձարկողներին:

Ինչպե՞ս հաղթահարել.

Փորձարկողները պետք է կարողանան արձագանքել փոփոխություններին ՝ իմանալով, որ արագաշարժ նախագծերում փոփոխությունն անխուսափելի է: Երբ պահանջները փոխվում են հատկապես սպրինտի ավարտին, երբ բավարար ժամանակ չունի պատշաճ կերպով փորձարկելու համար, փորձարկողները պետք է հնարավորինս շատ տեղեկատվություն տրամադրեն այն մասին, թե ինչ թեստեր են անցկացվել, և ծրագրի որ մասը չի փորձարկվել լավ, որպեսզի թիմը կարող է տեղեկացված որոշում կայացնել (հնարավոր ռիսկի հիման վրա) ՝ թողարկել հատկությունը, թե ոչ:


Փորձեք ներգրավել ծրագրավորողներին նաև փորձարկման մեջ, քանի որ փորձարկումն ու որակը պետք է լինեն ամբողջ թիմի պարտականությունը:

Պատմության վերաբերյալ բավարար տեղեկատվություն

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

Սա մարտահրավեր է ստեղծում փորձարկողների համար, քանի որ հասկացողության և պահանջների պակաս կա, ուստի պատշաճ փորձարկման դեպքերը հնարավոր չէ կառուցել:

Ինչպե՞ս հաղթահարել.


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

Շարունակական փորձարկում

Agկուն, թեստավորումը փուլ չէ, դա գործունեություն է: Թեստավորումը սկսվում է հենց սկզբից, նույնիսկ նախքան զարգացումը սկսելը:

Սպրինտի ընթացքում սահուն ճանապարհորդություն ունենալու համար անհրաժեշտ է, որ պատմությունները հավաքելու ընթացքում հետ մնացորդի պատմությունները մշակվեին: Սա նշանակում է, որ ՈԱ-ն պետք է համագործակցի արտադրանքի սեփականատերերի հետ `պատմության մանրամասները իմանալու համար, այնուհետև օգնի գրել ընդունման լավ չափանիշներ:

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


Ինչպե՞ս հաղթահարել.

Համոզվեք, որ յուրաքանչյուր պատմություն ունի ընդունման համարժեք չափանիշներ և որ պատմության համատեքստը բոլորն էլ լավ են հասկանում ՝ նախքան զարգացման վրա աշխատանք սկսելը:

Սկսեք հնարավորինս շուտ թեստեր (ավտոմատացված կամ մեխանիկական) ստեղծել, որպեսզի, երբ գործառույթը հասանելի է փորձարկման համար, կարողանաք անմիջապես սկսել:

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


Ավտոմատացրեք ռեգրեսիայի թեստերը ՝ փորձարկման որոշ փորձերը մեղմելու և հետախուզական փորձարկումների համար ձեր ժամանակը ազատելու համար:

Տեխնիկական հմտություններ / Թեստի ավտոմատացում

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

Եթե ​​փորձարկողները գալիս են զուտ ձեռնարկի կամ հետախուզական ֆոնի վրա, ապա նրանք դժվարանում են պահպանել առաքման տեմպը, քանի որ անհրաժեշտ է շարունակական փորձարկում անցկացնել:

Կատարման փորձարկումը նույնպես կարևոր է, մասնավորապես, վեբ վրա հիմնված ծրագրերի համար ՝ ապահովելու համար, որ հավելվածը կարող է պահպանել բարձր բեռը պիկ ժամանակներում: Եթե ​​ձեր ընկերությունը չունի կատարման նվիրված փորձարկող, սպասվում է, որ ֆունկցիոնալ փորձարկողները նույնպես մասնակցում են կատարողականի փորձարկումներին:

Ինչպե՞ս հաղթահարել.

Սկսեք սովորել սցենարական կամ ծրագրավորման մի քանի լեզուներ, ինչպիսիք են Ruby և Java - սրանք ամենատարածված լեզուներն են տեխնիկական փորձարկման համայնքում:

Եթե ​​դուք արդեն ծանոթ եք ծրագրավորմանը և խրված եք, օգնություն ստացեք ծրագրավորողներից:

Սելենի գործիքը զննարկչի ավտոմատացման փորձարկման ամենատարածված գործիքն է, ուստի եթե նախագիծը հիմնված է ոստայնի վրա, գործիքի լավ իմացությունը մեծ առավելություն է:

JMeter- ը նաև մեկ այլ հիանալի գործիք է `գիտելիքներ ունենալու համար: Դա բաց աղբյուրի կատարման փորձարկման գործիք է և համեմատաբար հեշտ է սովորել, այնպես որ ներբեռնեք այն և սկսեք խաղալ դրա որոշ առանձնահատկությունների հետ:

Բազմակի զննարկիչներ / բազմաթիվ սարքեր

Ներկայումս շատ կայքերի ճարտարապետությունը բաղկացած է «հետ-վերջից» և «առջևից»: Front-end կտորը հիմնականում հիմնված է JavaScript- ի և CSS- ի վրա, որոնք կարող են տարբեր կերպ վարվել, երբ դիտվում են տարբեր զննարկիչներից կամ սարքերից:

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

Ինչպե՞ս հաղթահարել.

Ավտոմատացումը այստեղ առանցքային է: Թեստ գրելը և այն բազմաթիվ բրաուզերների վրա գործարկելը ամենալավն է, ինչ ավտոմատացումը:

Դուք կարող եք օգտագործել Selenium Grid հետ Դոկեր կառավարել և գործարկել ձեր ավտոմատացված թեստերը զուգահեռաբար բազմաթիվ զննարկիչների վրա:

Մեկ այլ հիանալի գործիք `բազմաբրաուզերային փորձարկման համար BrowserSync- ը ,

Հաղորդակցություն

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

Ինչպե՞ս հաղթահարել.

Համոզվեք, որ թիմի միջև արդյունավետ հաղորդակցություն կա: Շարունակաբար համագործակցեք մշակողների և ապրանքների սեփականատերերի հետ:

Համոզվեք, որ առկա է գործընթաց, և որ թիմի յուրաքանչյուր անդամ հավատարիմ է այդ գործընթացին: Շատ հաճախ հիմնական խնդիրները կամ սխալները վաղ չեն հայտնաբերվում, քանի որ գործընթացը չի հետևվել, և թիմը չի կարողացել միմյանց հետ շփվել: