Թեստավորման հիմնարար խնդիրը

Ներածություն

Բարի օր, Խաբրովսկի բնակիչներ։ Հենց հիմա ես լուծում էի ֆինտեխ ընկերության QA առաջատար թափուր աշխատատեղի թեստային առաջադրանքը: Առաջին խնդիրը՝ ստեղծել թեստային պլան՝ ամբողջական ստուգաթերթով և էլեկտրական թեյնիկի փորձարկման փորձարկման դեպքերի օրինակներով, կարող է լուծվել աննշանորեն.

Բայց երկրորդ մասը հարց էր. «Կա՞ն արդյոք ընդհանուր խնդիրներ բոլոր թեստերի համար, որոնք խանգարում են նրանց ավելի արդյունավետ աշխատել»:

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

Սահմանումներ

Առաջին բանը, որ ես սովորաբար անում եմ նոր խնդիր լուծելիս՝ փորձել հասկանալ, թե ինչի մասին է խոսքը, և դա անելու համար ես պետք է հասկանամ այն ​​բառերի իմաստը, որոնք ներկայացնում են այն: Հասկանալու հիմնական բառերը հետևյալն են.

  • խնդիրը
  • փորձարկող
  • փորձարկող աշխատանք
  • փորձարկիչի արդյունավետությունը

Անդրադառնանք Վիքիպեդիային և ողջախոհությանը.
Խնդիր (հին հունարեն խնդիր) լայն իմաստով - բարդ տեսական կամ գործնական խնդիր, որը պահանջում է ուսումնասիրություն և լուծում. գիտության մեջ - հակասական իրավիճակ, որը հայտնվում է հակադիր դիրքերի տեսքով ցանկացած երևույթի, առարկայի, գործընթացի բացատրության մեջ և պահանջում է համարժեք տեսություն դրա լուծման համար. կյանքում խնդիրը ձևակերպվում է մարդկանց համար հասկանալի ձևով՝ «Ես գիտեմ ինչ, չգիտեմ ինչպես», այսինքն՝ հայտնի է, թե ինչ է պետք ձեռք բերել, բայց հայտնի չէ՝ ինչպես անել։ . Գալիս է ուշ ժամից: լատ. խնդիր, հունարենից։ խնդիր «առաջ նետված, առաջ դրված»; ից προβάλλω «նետել առաջ, դնել ձեր առջեւ; մեղադրել».

Դա այնքան էլ իմաստ չունի, իրականում «խնդիր» = «ինչ-որ բան, որի հետ պետք է զբաղվել»:
Փորձարկող - մասնագետ (մենք չենք բաժանի տեսակների, քանի որ մեզ հետաքրքրում են բոլոր փորձարկողները), ով մասնակցում է բաղադրիչի կամ համակարգի փորձարկմանը, որի արդյունքն է.
Փորձարկողի աշխատանքը — թեստավորման հետ կապված գործողությունների մի շարք:
Արդյունավետություն (լատ. effectivus) - ձեռք բերված արդյունքի և օգտագործվող ռեսուրսների միջև կապը (ISO 9000: 2015):
Արդյունք - գործողությունների (արդյունքի) կամ իրադարձությունների շղթայի (շարքի) հետևանք՝ արտահայտված որակապես կամ քանակապես. Հնարավոր արդյունքները ներառում են առավելություններ, թերություն, շահույթ, կորուստ, արժեք և հաղթանակ:
Ինչպես «խնդիրը», իմաստը քիչ է. մի բան, որ առաջացել է աշխատանքի արդյունքում:
ռեսուրսը - անձի կամ մարդկանց ցանկացած գործունեություն իրականացնելու քանակապես չափելի հնարավորությունը. պայմաններ, որոնք հնարավորություն են տալիս որոշակի փոխակերպումների միջոցով ստանալ ցանկալի արդյունք: Փորձարկողն անձ է, և կենսական ռեսուրսների տեսության համաձայն՝ յուրաքանչյուր մարդ չորս տնտեսական ակտիվների սեփականատեր է.
կանխիկ գումարը (եկամուտը) վերականգնվող ռեսուրս է.
էներգիան (կյանքի ուժը) մասամբ վերականգնվող ռեսուրս է.
ժամանակը հաստատուն և սկզբունքորեն չվերականգնվող ռեսուրս է.
գիտելիքը (տեղեկատվությունը) վերականգնվող ռեսուրս է, այն մարդկային կապիտալի մի մասն է, որը կարող է աճել և ոչնչացվել.[1].

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

որոշում

Այսպիսով, մենք փնտրում ենք փորձարկողների գլոբալ խնդիրներ, որոնք խաթարում են նրանց աշխատանքի արդյունավետությունը։
Ամենակարևոր ռեսուրսը, որը ծախսվում է փորձարկողի աշխատանքի վրա, նրա ժամանակն է (մնացածը կարելի է այսպես թե այնպես կրճատել դրան), և որպեսզի մենք խոսենք արդյունավետության ճիշտ հաշվարկի մասին, արդյունքը նույնպես պետք է հասցվի ժամանակի: .
Դա անելու համար հաշվի առեք մի համակարգ, որի կենսունակությունը փորձարկողն ապահովում է իր աշխատանքով: Նման համակարգը նախագիծ է, որի թիմը ներառում է փորձարկող: Ծրագրի կյանքի ցիկլը կարելի է մոտավորապես ներկայացնել հետևյալ ալգորիթմով.

  1. Պահանջների հետ աշխատելը
  2. Տեխնիկական բնութագրերի ձևավորում
  3. Զարգացում
  4. Փորձարկում
  5. Թողարկում արտադրության մեջ
  6. Աջակցություն (գնալ կետ 1)

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

Ինչպե՞ս վարվել սրա հետ:

Եզրակացությունները բավականին ակնհայտ են և շատերի կողմից երկար ժամանակ օգտագործվել են.

  1. Մշակումը և թեստավորումը պետք է սկսվեն և ավարտվեն գրեթե միաժամանակ (դա սովորաբար անում է բաժինը QA). Իդեալական տարբերակն այն է, երբ մշակվող ամբողջ ֆունկցիոնալությունն արդեն ծածկված է ավտոմատ թեստերով, երբ այն պատրաստ է, կազմակերպվում է ռեգրեսիայի (և, հնարավորության դեպքում, նախապես կատարվող) փորձարկման՝ օգտագործելով ինչ-որ տեսակի CI.
  2. Որքան շատ հնարավորություններ ունենա նախագիծը (որքան ավելի բարդ է այն), այնքան ավելի շատ ժամանակ պետք է ծախսվի՝ ստուգելու համար, որ նոր գործառույթը չի խախտում հինը: Հետևաբար, որքան բարդ է նախագիծը, այնքան ավելի շատ ավտոմատացում է պահանջվում ռեգրեսիայի փորձարկում.
  3. Ամեն անգամ, երբ մենք բաց ենք թողնում արտադրության սխալը, և օգտատերը գտնում է այն, մենք պետք է լրացուցիչ ժամանակ ծախսենք նախագծի կյանքի ցիկլով անցնելու համար՝ սկսած 1-ին կետից (աշխատանք պահանջների հետ, այս դեպքում՝ օգտվողներ): Քանի որ սխալ բաց թողնելու պատճառներն ընդհանուր առմամբ անհայտ են, մեզ մնում է միայն մեկ օպտիմալացման ուղի. օգտատերերի կողմից հայտնաբերված յուրաքանչյուր վրիպակ պետք է ներառվի ռեգրեսիայի թեստում, որպեսզի վստահ լինենք, որ այն այլևս չի հայտնվի:

Source: www.habr.com

Добавить комментарий