Ծրագրային ապահովման մշակման աշխարհում որակի ապահովումը առանցքային դեր է խաղում՝ ապահովելու, որ հավելվածներն անխափան աշխատում են տարբեր պայմաններում: Փորձարկման մեթոդոլոգիաների բազում միջակայքում ներծծող թեստավորումը առաջանում է որպես կարևոր պրակտիկա, որը վավերացնում է ծրագրային ապահովման համակարգերի կայունությունը, դիմացկունությունը և կատարումը երկար ժամանակահատվածներում: Հավելվածը կայուն և ծանր բեռների ենթարկելով՝ ներծծող թեստավորումը բացահայտում է թաքնված խոցելիությունները և ծրագրավորողներին հնարավորություն է տալիս ճշգրտել իրենց ստեղծագործությունները՝ օպտիմալ կատարման համար:
Այս հոդվածում մենք կուսումնասիրենք ներծծման թեստերի նշանակությունը, ինչպես անցկացնել ներծծման թեստեր, և ներծծման փորձարկման որ գործիքները կարող են պարզեցնել ներծծման փորձարկումը և բարելավել ձեր ներծծման թեստերի արդյունավետությունը:
Ի՞նչ է ներծծման փորձարկումը:
Soak testing-ը, որը նաև հայտնի է որպես դիմացկունության թեստավորում կամ երկարակեցության թեստավորում, ծրագրային ապահովման ոչ ֆունկցիոնալ փորձարկման տեսակ է, որը գնահատում է հավելվածի վարքագիծը և կատարումը կայուն կամ երկարատև օգտագործման պայմաններում: Այն նպատակ ունի մոդելավորել իրական աշխարհի սցենարներ, որտեղ ծրագրաշարը ենթարկվում է շարունակական օգտագործման, ծանր բեռների կամ շահագործման երկար ժամանակաշրջանների: Ներծծման փորձարկման հիմնական նպատակն է բացահայտել համակարգի ռեսուրսների, հիշողության արտահոսքի, կատարողականի վատթարացման և ընդհանուր կայունության հետ կապված հնարավոր խնդիրները երկար ժամանակով:
Ներծծման փորձարկման ընթացքում հավելվածը ենթարկվում է հետևողական ծանրաբեռնվածության կամ օգտագործողի մեծ բեռի երկարատև տևողությամբ, որը սովորաբար տատանվում է մի քանի ժամից մինչև մի քանի օր: Այս երկարատև ազդեցությունն օգնում է բացահայտել այնպիսի խնդիրներ, որոնք կարող են առաջանալ ավելի կարճ փորձարկման ցիկլերի ժամանակ, ինչպիսիք են հիշողության արտահոսքը, ռեսուրսների սպառումը, համակարգի աշխատանքի վատթարացումը կամ երկարաժամկետ տվյալների կուտակման հետ կապված խնդիրները:
Ներծծման փորձարկման հիմքում ընկած հիմնական գաղափարն է որոշել, թե որքանով է համակարգը կարողանում հաղթահարել կայուն սթրեսը, ապահովելով, որ այն մնում է կայուն և հուսալիորեն աշխատում է նույնիսկ շարունակական օգտագործման դեպքում: Այն նպատակ ունի բացահայտելու կատարողականի ցանկացած դեգրադացիա, հիշողության արտահոսք կամ համակարգի հետ կապված այլ խնդիրներ, որոնք կարող են առաջանալ ժամանակի ընթացքում: Ծրագրաշարը շարունակական ծանրաբեռնվածության ենթարկելով՝ ներծծող թեստավորումը պատկերացումներ է տալիս դրա երկարաժամկետ վարքագծի վերաբերյալ և օգնում է բացահայտել պոտենցիալ խոչընդոտները կամ խոցելիությունները, որոնք կարող են ի հայտ գալ շահագործման երկար ժամանակաշրջաններում:
Ե՞րբ պետք է կատարենք ներծծման թեստավորում:
Ներծծման փորձարկումը հատկապես կարևոր է այն հավելվածների համար, որոնք ակնկալվում է, որ շարունակաբար կաշխատեն, ինչպիսիք են վեբ սերվերները, տվյալների բազայի համակարգերը կամ ծրագրային ապահովումը, որոնք տեղակայված են կարևոր միջավայրերում, որտեղ անընդունելի է պարապուրդը: Որոշ այլ դեպքեր, երբ ներծծման փորձարկումը կարևոր է, հետևյալն են.
1. Ծրագրային ապահովման նոր թողարկումներ.
Երբ մշակվում է ծրագրային հավելվածի նոր տարբերակը կամ թողարկումը, ներծծման թեստավորումը կարող է կիրառվել՝ կայուն օգտագործման պայմաններում դրա կայունությունը և կատարողականությունը գնահատելու համար: Այն օգնում է բացահայտել ցանկացած խնդիր, որը կարող է առաջանալ երկար ժամանակ աշխատելուց հետո՝ ապահովելով, որ նոր թողարկումը կարող է դիմակայել իրական աշխարհում օգտագործմանը:
2. Համակարգի արդիականացում.
Երբ զգալի թարմացումներ կամ փոփոխություններ են կատարվում համակարգի հիմքում ընկած ենթակառուցվածքում, ինչպիսիք են օպերացիոն համակարգի արդիականացումը, տվյալների բազայի միգրացիան կամ ապարատային փոխարինումը, ներծծման թեստավորումը կազմակերպություններին հնարավորություն է տալիս հաստատել, որ արդիականացված համակարգը կարող է շարունակական օգտագործումը առանց որևէ բացասական ազդեցության կիրառման կայունության վրա կամ կատարում .
3. Պիկ օգտագործման ժամկետները.
Եթե ակնկալվում է, որ ծրագրային ապահովման հավելվածը մեծ կիրառություն կունենա որոշակի ժամանակահատվածներում, ինչպիսիք են սեզոնային գագաթնակետերը, գովազդային արշավները կամ օգտատերերի գործունեության ակնկալվող աճերը, ներծծման փորձարկումը դառնում է հրամայական:
Ներծծման փորձարկումն անցկացնելու օպտիմալ ժամկետը հանգստյան օրերին է, երբ հավելվածը կարող է շարունակաբար գործել երկար ժամանակ, ներառյալ ցերեկը և գիշերը: Այնուամենայնիվ, կոնկրետ ժամկետները կարող են տարբեր լինել՝ կախված փորձարկման միջավայրի սահմանափակումներից և պահանջներից:
Երբ ձեզ պետք չեն թրջող թեստեր
Թեև ներծծման փորձարկումը արժեքավոր պրակտիկա է ծրագրային ապահովման մշակման շատ սցենարներում, կան մի քանի իրավիճակներ, որտեղ անհրաժեշտ կամ ձեռնտու չէ կատարել ներծծման թեստեր: Դրանք ներառում են.
1. Կարճատև դիմումներ.
Եթե դուք մշակում եք ծրագիր, որը նախատեսված է կարճաժամկետ կամ մեկանգամյա օգտագործման համար, որտեղ օգտվողները չեն ակնկալվում, որ դրա հետ երկար ժամանակ շփվեն, ներծծման փորձարկումը կարող է պահանջվել: Ներծծման փորձարկումն ավելի կարևոր է այն հավելվածների համար, որոնք նախատեսված են շարունակական կամ երկարատև աշխատելու համար:
2. Սահմանափակ ռեսուրսների դիմումներ.
Որոշ հավելվածներ ունեն ռեսուրսների սահմանափակ սահմանափակումներ, ինչպիսիք են ներկառուցված համակարգերը կամ թեթև շարժական հավելվածները՝ խիստ հիշողության սահմանափակումներով: Նման դեպքերում ներծծման փորձարկումը կարող է նշանակալից պատկերացումներ չտալ, քանի որ սահմանափակումներն արդեն հայտնի են և լայնորեն օպտիմիզացված: Փոխարենը, ռեսուրսների սահմանափակումների վրա կենտրոնացած փորձարկման այլ մեթոդներ կարող են ավելի հարմար լինել:
3. Ժամանակի և բյուջեի սահմանափակումները.
Այն իրավիճակներում, երբ ժամանակի և բյուջեի սահմանափակումները խիստ են, և ընդլայնված օգտագործման հետ կապված ռիսկերը համեմատաբար ցածր են, կազմակերպությունները կարող են որոշել առաջնահերթություն տալ փորձարկման այլ գործողություններին, քան ներծծման փորձարկումը: Մինչ ներծծման փորձարկումը արժեքավոր պատկերացումներ է տալիս, դրա կատարումը պահանջում է լրացուցիչ ժամանակ, ռեսուրսներ և ենթակառուցվածք:
4. Կայուն հավելվածներ.
Եթե հավելվածը արտադրվել է զգալի ժամանակահատվածում և նախկինում ենթարկվել է մանրակրկիտ փորձարկման և կատարողականի օպտիմալացման, ապա կանոնավոր ներծծման թեստեր կատարելը կարող է այդքան էլ կարևոր չլինել: Այնուամենայնիվ, պարբերական վերագնահատումը դեռ կարող է շահավետ լինել, եթե ներդրվեն էական փոփոխություններ կամ բարելավումներ:
Կարևոր է, որ մշակողները ուշադիր գնահատեն, թե արդյոք անհրաժեշտ է ներծծման թեստավորում, նախքան այն բաց թողնելու որոշում կայացնելը: Նույնիսկ եթե ներծծման փորձարկումը կարևոր չէ, ծրագրային ապահովման փորձարկման այլ ձևեր պետք է իրականացվեն:
Ո՞վ է ներգրավված ներծծման փորձարկման մեջ:
Ներծծման փորձարկումը սովորաբար անցկացվում է ծրագրային ապահովման փորձարկման թիմերի կամ որակի ապահովման (QA) մասնագետների կողմից, ովքեր ունեն փորձաքննություն կատարողականի թեստավորման և փորձարկման ավտոմատացման ոլորտում: Կատարողականության թեստավորման կամ դիմացկունության թեստավորման մասնագիտացում ունեցող փորձարկողները հաճախ պատասխանատու են ներծծման թեստերի պլանավորման, նախագծման և կատարման համար: Նրանք խորը պատկերացում ունեն թեստավորման մեթոդոլոգիաների, կատարողականի չափումների և գործիքների մասին, որոնք անհրաժեշտ են մանրակրկիտ ներծծման թեստավորում անցկացնելու համար:
ՈԱ ինժեներները նաև վճռորոշ դեր են խաղում ծրագրային ապահովման հավելվածների ընդհանուր որակի և կատարողականի ապահովման գործում: Նրանք համագործակցում են մշակողների և փորձարկողների հետ՝ սահմանելու ներծծման թեստավորման պահանջները, մշակելու թեստային պլաններ և վերլուծելու թեստի արդյունքները: ՈԱ ինժեներները կարող են նաև աջակցել համապատասխան գործիքների և տեխնոլոգիաների ընտրության հարցում՝ արդյունավետ ներծծման թեստեր անցկացնելու համար:
Ի՞նչ ենք մենք փորձարկում ներծծման թեստում:
Ներծծման փորձարկման ժամանակ հավելվածի տարբեր ասպեկտները փորձարկվում են՝ գնահատելու դրա վարքագիծը և կատարումը կայուն օգտագործման պայմաններում: Հիմնական տարրերը, որոնք սովորաբար փորձարկվում են ներծծման փորձարկման ժամանակ, ներառում են կայունությունը, հիշողությունը, ռեսուրսները, համակարգի վերականգնումը և այլն:
1. Կայունություն
Soak testing-ը նպատակ ունի որոշել կիրառման կայունությունը ժամանակի ընթացքում: Այն գնահատում է, թե արդյոք հավելվածը կգործի առանց խափանումների, սառեցման կամ անսպասելի խափանումների երկարատև օգտագործման ընթացքում:
2. Հիշողության արտահոսք
Ներծծման փորձարկման կարևոր շեշտադրումներից մեկը հիշողության արտահոսքի հայտնաբերումն ու լուծումն է: Այն ներառում է հավելվածի հիշողության օգտագործման երկարատև մոնիտորինգ՝ համոզվելու համար, որ հիշողության զգալի արտահոսք կամ հիշողության սպառման հետ կապված խնդիրներ չկան, որոնք կարող են հանգեցնել կատարողականի վատթարացման կամ համակարգի անկայունության:
3. Ռեսուրսների օգտագործում
Soak թեստավորումը գնահատում է, թե որքանով է հավելվածը կառավարում իր ռեսուրսները, ինչպիսիք են պրոցեսորի օգտագործումը, սկավառակի տարածությունը, ցանցի օգտագործումը կամ տվյալների բազայի միացումը կայուն օգտագործման ընթացքում: Այն օգնում է բացահայտել ռեսուրսների հետ կապված ցանկացած խոչընդոտ կամ անարդյունավետություն, որը կարող է ազդել աշխատանքի վրա:
4. Կատարման վատթարացում
Soak-ի փորձարկումը նպատակ ունի բացահայտելու ժամանակի ընթացքում կատարողականության ցանկացած վատթարացում: Այն չափում և վերլուծում է հավելվածի արձագանքման ժամանակը, թողունակությունը և կատարողականի այլ ցուցանիշներ՝ որոշելու, թե արդյոք երկարաժամկետ օգտագործման ընթացքում կատարողականության կամ արձագանքման զգալի նվազում կա:
5. Համակարգի վերականգնում
Soak թեստավորումը նաև ուսումնասիրում է, թե որքանով է հավելվածը վերականգնվում բացառիկ սցենարներից կամ համակարգի ընդհատումներից: Այն հաստատում է, եթե հավելվածը կարող է վերսկսել բնականոն աշխատանքը և պահպանել կայունությունը այնպիսի իրադարձություններից հետո, ինչպիսիք են ցանցի անջատումները, տվյալների բազայի վերագործարկումը կամ սերվերի վերագործարկումը:
6. Տվյալների կուտակում
Եթե հավելվածը ներառում է տվյալների երկարաժամկետ կուտակում , ապա ներծծող թեստավորումը երաշխավորում է, որ համակարգը արդյունավետ կերպով կառավարում է այս կուտակումը, առանց տվյալների հետ կապված խնդիրների, ինչպիսիք են տվյալների բազայի աշխատանքի վատթարացումը, տվյալների կոռուպցիան կամ տվյալների կորուստը:
Ներծծման թեստերի բնութագրերը
Հնարավոր է օգտագործել բնութագրերը ներծծման թեստը սահմանելու համար, ինչը նշանակում է, որ այս բնութագրերն օգնում են մեզ հասկանալու, թե ինչն է առանձնացնում ներծծման փորձարկումը ծրագրային ապահովման այլ տեսակի փորձարկումներից : Ստորև բերված է ներծծման կատարողականության փորձարկման որոշ առավել տարբերակիչ բնութագրերի ցանկը:
1. Երկարատև տեւողություն
Ներծծման թեստերը ներառում են հավելվածը երկարատև օգտագործման ենթարկելը, որը սովորաբար տատանվում է մի քանի ժամից մինչև մի քանի օր: Այս երկարատև տևողությունը օգնում է բացահայտել այն խնդիրները, որոնք կարող են ի հայտ գալ միայն երկարատև վիրահատությունների ժամանակ: Ներծծման թեստերի տեւողությունը հաճախ որոշվում է հասանելի ժամանակով:
2. Շարունակական ծանրաբեռնվածություն
Soak թեստերը նմանակում են իրական աշխարհի սցենարները՝ հայտը ենթարկելով հետևողական կամ մեծ ծանրաբեռնվածության ամբողջ փորձարկման ժամանակահատվածում: Այս ծանրաբեռնվածությունը նախագծված է կրկնելու ակնկալվող օգտագործման օրինաչափությունները և ժամանակի ընթացքում լարելու համակարգը: Հետևաբար, հայտերը պետք է աշխատեն առանց որևէ ընդհատման երկար ժամանակով:
3. Սցենարների լուսաբանում
Soak թեստերը պետք է ընդգրկեն բոլոր այն սցենարները, որոնք շահագրգիռ կողմերը համաձայնում են, որ պետք է ծածկվեն: Soak թեստերը նպատակ ունեն կրկնօրինակել իրական աշխարհի օգտագործման սցենարները, ներառյալ օգտատերերի փոխազդեցությունները, համակարգի մուտքերը և տվյալների մշակումը: Փորձարկման սցենարները նախագծված են ընդօրինակելու վերջնական օգտագործողների ակնկալվող վարքագիծը հավելվածի օգտագործման երկար ժամանակաշրջաններում:
Ներծծում փորձարկման ռազմավարություններ
Նախքան ներծծման փորձարկումներ կատարելը, կարևոր է հաստատել ձեր ներծծման փորձարկման ռազմավարությունը՝ հաշվի առնելով ձեր ներծծման թեստի դիզայնի մի շարք ասպեկտներ:
Որոշեք ձեր փորձարկման միջավայրը՝ հաշվի առնելով, թե որ սարքաշարը, ծրագրաշարը, տվյալների բազան և օպերացիոն համակարգը կօգտագործեք ձեր ներծծման թեստը կատարելու համար: Գրեք թեստային սցենարներ, որոնք ընդգրկում են բոլոր այն ոլորտները, որոնք դուք ցանկանում եք փորձարկել, և գնահատեք, թե որքան ժամանակ պետք է գործարկեք ձեր ներծծման թեստերը, որպեսզի պատշաճ կերպով փորձարկեք կատարումը:
Կան նաև ներծծման փորձարկման բազմաթիվ տարբեր ռազմավարություններ, որոնք կարող եք կիրառել ներծծման փորձարկում կատարելիս, որոնցից մի քանիսը մանրամասն ներկայացված են ստորև:
1. Մշտական ծանրաբեռնվածության ռազմավարություն
Այս ռազմավարության մեջ մշտական ծանրաբեռնվածություն կամ օգտագործողի ծանրաբեռնվածություն կիրառվում է հավելվածի վրա ներծծման փորձարկման ընթացքում: Նպատակն է գնահատել, թե ինչպես է համակարգը գործում և վարվում կայուն օգտագործման պայմաններում՝ առանց ծանրաբեռնվածության էական տատանումների:
2. աստիճանական բեռի ռազմավարություն
Այս ռազմավարությունը ներառում է ներծծման թեստի ընթացքում ժամանակի ընթացքում հավելվածի վրա աշխատանքային ծանրաբեռնվածության կամ օգտագործողի բեռի աստիճանական ավելացում: Այն օգնում է բացահայտել համակարգի կատարողականի շեմերը և որոշել, թե ինչպես է այն կառավարում սթրեսի մակարդակի և օգտագործման աճը:
3. Փոփոխական բեռի ռազմավարություն
Փոփոխական ծանրաբեռնվածության ռազմավարության դեպքում աշխատանքային ծանրաբեռնվածությունը կամ օգտագործողի ծանրաբեռնվածությունը տատանվում է ներծծման փորձարկման ընթացքում: Այս մոտեցումը նմանակում է իրական աշխարհի սցենարները, որտեղ հավելվածը օգտագործում է տարբեր մակարդակներ կամ պահանջարկ: Այն օգնում է գնահատել համակարգի կարողությունը՝ հարմարվելու և կարգավորելու դինամիկ աշխատանքային բեռները:
4. Կատարողականության դեգրադացիայի վերլուծություն
Այս ռազմավարությունը կենտրոնանում է ներծծման թեստի ընթացքում ժամանակի ընթացքում կատարողականի վատթարացման մոնիտորինգի և վերլուծության վրա: Այն ներառում է կատարողականի հիմնական ցուցանիշների հետևում, ինչպիսիք են արձագանքման ժամանակները կամ թողունակությունը, որպեսզի հայտնաբերեն կատարողականի ցանկացած աստիճանական վատթարացում, որը կարող է առաջանալ կայուն օգտագործման պայմաններում:
Շփոթության վերացում. ներծծման փորձարկում
ընդդեմ ծանրաբեռնվածության թեստավորման ընդդեմ սթրեսի թեստի
Ծրագրային ապահովման փորձարկման ժամանակ հաճախ կարող է շփոթություն առաջանալ ներծծող թեստավորում, բեռնվածության թեստավորում և սթրես թեստավորում տերմինների շուրջ: Թեև այս փորձարկման մեթոդները կապված են, դրանք ծառայում են տարբեր նպատակների և կենտրոնանում են հավելվածի կատարողականի առանձին ասպեկտների վրա:
1. Ի՞նչ է բեռի փորձարկումը:
Բեռնվածության փորձարկումը ներառում է հավելվածի կատարողականի փորձարկում ակնկալվող կամ սպասված նորմալ և առավելագույն օգտագործման պայմաններում: Այն նպատակ ունի որոշել, թե ինչպես է համակարգը վարվում և գործում, երբ ենթարկվում է որոշակի ծանրաբեռնվածության կամ օգտագործողի ծանրաբեռնվածության: Բեռնվածության փորձարկումն օգնում է բացահայտել կատարողականի խոչընդոտները, արձագանքման ժամանակները և թողունակության ցուցանիշները տարբեր բեռի մակարդակներում: Նպատակը գնահատելն է, թե արդյոք հավելվածը կարող է կարգավորել օգտվողի ակնկալվող պահանջարկը և ապահովել օպտիմալ կատարում տարբեր ծանրաբեռնվածության պայմաններում:
Որո՞նք են տարբերությունները ներծծման փորձարկման և բեռի փորձարկման միջև:
Ներծծման փորձարկման և բեռի փորձարկման հիմնական տարբերություններն են.
Նպատակը:
Ներծծման փորձարկման հիմնական նպատակն է գնահատել համակարգի կայունությունը, հիշողության կառավարումը, ռեսուրսների օգտագործումը և կատարողականի վատթարացումը կայուն օգտագործման երկար ժամանակահատվածում: Այն նպատակ ունի բացահայտելու խնդիրները, որոնք կարող են առաջանալ ժամանակի ընթացքում, ինչպիսիք են հիշողության արտահոսքը կամ կատարողականի վատթարացումը: Ի հակադրություն, բեռնվածության փորձարկումը նպատակ ունի գնահատել հավելվածի կատարումը հատուկ ծանրաբեռնվածության կամ օգտագործողի ծանրաբեռնվածության պայմաններում: Այն օգնում է բացահայտել կատարողականի խոչընդոտները, արձագանքման ժամանակները և թողունակության ցուցանիշները տարբեր բեռի մակարդակներում:
Տեւողությունը:
Ներծծման փորձարկումը ներառում է հավելվածը երկարատև օգտագործման ենթարկելը, որը սովորաբար տատանվում է մի քանի ժամից մինչև մի քանի օր: Ներծծման փորձարկման տեւողությունը զգալիորեն ավելի երկար է համեմատած բեռնվածքի փորձարկման հետ, որը կենտրոնանում է կոնկրետ բեռների տակ կատարողականի ցուցանիշների և վարքի ավելի կարճ տևողության գնահատման վրա: Բեռնվածության փորձարկումը սովորաբար իրականացվում է որոշակի ժամանակահատվածի համար կամ մինչև կատարողականի նախապես սահմանված չափանիշները բավարարվեն:
Աշխատանքային ծանրաբեռնվածության փոփոխություն.
Ներծծման փորձարկման ժամանակ աշխատանքային ծանրաբեռնվածությունը կամ օգտագործողի ծանրաբեռնվածությունը մնում է հետևողական կամ համեմատաբար կայուն փորձարկման ողջ ընթացքում: Ի հակադրություն, բեռնվածության փորձարկումը ներառում է տարբեր ծանրաբեռնվածության կամ օգտագործողի բեռների կիրառում իրական աշխարհի սցենարները, ներառյալ սովորական և առավելագույն օգտագործման ժամանակաշրջանները մոդելավորելու համար: Նպատակն է հասկանալ, թե ինչպես է հավելվածը գործում տարբեր մակարդակների բեռի տակ:
2. Ի՞նչ է սթրես-թեստավորումը:
Սթրես թեստավորումը կենտրոնանում է հավելվածը իր սովորական գործառնական սահմաններից դուրս մղելու վրա՝ գնահատելու նրա վարքը ծայրահեղ պայմաններում: Այն ներառում է համակարգը ենթարկել օգտագործողների մեծ բեռների, տվյալների չափազանց մեծ ծավալների կամ ռեսուրսների սահմանափակումների՝ գնահատելու դրա կայունությունը, կայունությունը և վերականգնման հնարավորությունները: Սթրեսի թեստն օգնում է բացահայտել հավելվածի ճեղքման կետերը, չափել դրա ճկունությունը ինտենսիվ սթրեսի պայմաններում և հաստատել նրբագեղորեն վերականգնելու կարողությունը:
Որո՞նք են տարբերությունները ներծծման և սթրես-թեստի միջև:
Ներծծման թեստի և սթրես-թեստի միջև ամենամեծ տարբերությունները ներառում են.
Նպատակը:
Soak-ի թեստավորումը հիմնականում նպատակ ունի գնահատել համակարգի վարքագիծը և արդյունավետությունը երկարատև օգտագործման պայմաններում: Մյուս կողմից, սթրես-թեստավորումը նախատեսված է գնահատելու հավելվածի վարքագիծը և կատարումը ծայրահեղ պայմաններում, որոնք դուրս են մղում այն իր սովորական գործառնական սահմաններից: Այն նպատակ ունի բացահայտել բեկման կետերը, չափել ճկունությունը և գնահատել վերականգնման հնարավորությունները ուժեղ սթրեսի պայմաններում:
Փորձարկման պայմաններ.
Soak թեստավորումը նմանակում է իրական օգտագործման սցենարները, որտեղ հավելվածը ենթարկվում է շարունակական օգտագործման: Մյուս կողմից, սթրեսի թեստը ստեղծում է ծայրահեղ պայմաններ՝ հավելվածը ենթարկելով օգտագործողների մեծ բեռների, տվյալների չափազանց մեծ ծավալների կամ ռեսուրսների սահմանափակումների, որոնք գերազանցում են սպասվող կամ սովորական օգտագործման օրինաչափությունները:
Բեռի տատանումներ.
Ներծծման փորձարկման ժամանակ աշխատանքային ծանրաբեռնվածությունը կամ օգտագործողի ծանրաբեռնվածությունը մնում է համեմատաբար հետևողական կամ կայուն փորձարկման ողջ ընթացքում: Ի հակադրություն, սթրես-թեստավորումը սովորաբար ներառում է աշխատանքային ծանրաբեռնվածության ավելացում կամ ծայրահեղ պայմանների ստեղծում՝ համակարգը հասցնելու իր սահմաններին:
Ինտենսիվացնել:
Ներծծման փորձարկումը բնութագրվում է փորձարկման երկարատև և շարունակական շրջանով՝ առանց ծանրաբեռնվածության ինտենսիվության էական տատանումների: Սթրես թեստավորումը կիրառում է ինտենսիվ և ծայրահեղ պայմաններ, որոնք դուրս են հավելվածի նորմալ գործառնական պարամետրերից:
Կենտրոնանալ:
Ներծծման փորձարկումը սովորաբար կենտրոնանում է ժամանակի ընթացքում կայունության և կատարողականի վրա: Թեև սթրես-թեստավորումը նաև գնահատում է կատարողականը ծայրահեղ պայմաններում, այն հատուկ ընդգծում է հավելվածի վերականգնման հնարավորությունների փորձարկումը: Այն գնահատում է, թե որքանով է համակարգը վերականգնվում ծայրահեղ սթրեսից և վերադառնում կայուն և ֆունկցիոնալ վիճակի:
Ձեռնարկ ընդդեմ ավտոմատացված ներծծման թեստեր
Երբ խոսքը վերաբերում է ներծծման թեստերի իրականացմանը, թիմերը հնարավորություն ունեն ընտրելու ձեռքով փորձարկման և ավտոմատացված թեստավորման մոտեցումների միջև: Ձեռքով ներծծման փորձարկումը ներառում է մարդկային փորձարկողներ, որոնք ձեռքով կատարում են թեստային սցենարները և երկար ժամանակ վերահսկում հավելվածի վարքագիծը: Ավտոմատ ներծծման թեստավորումը ներառում է մասնագիտացված գործիքների կամ շրջանակների օգտագործում՝ թեստային սցենարների կատարումը ավտոմատացնելու և երկարաժամկետ ժամանակահատվածում հավելվածի վարքագիծը վերահսկելու համար: Ծրագրային ապահովման փորձարկման բազմաթիվ ավտոմատացումներ իրականացվում են ռոբոտային գործընթացների ավտոմատացման միջոցով:
Ձեռքով ներծծման փորձարկման առավելությունները ներառում են.
1. Ճկունություն:
Ձեռքով փորձարկումը թույլ է տալիս փորձարկողներին արագ հարմարվել փոփոխություններին և հարմարեցնել փորձարկման սցենարները կամ պայմանները թռիչքի ժամանակ:
2. Համատեքստային ըմբռնում.
Փորձարկողները կարող են բերել իրենց տիրույթի գիտելիքներն ու փորձը արդյունքները մեկնաբանելու և դիտարկված վարքագծի հիման վրա տեղեկացված որոշումներ կայացնելու համար:
3. Ծախսերի արդյունավետություն.
Ձեռքով փորձարկումը կարող է ավելի ծախսարդյունավետ լինել փոքրածավալ նախագծերի համար, որոնք չեն պահանջում լայնածավալ ավտոմատացման ենթակառուցվածք:
4. Իրական ժամանակի դիտարկում.
Մարդկանց փորձարկողները կարող են իրական ժամանակում դիտարկել և վերլուծել հավելվածի վարքագիծն ու կատարումը՝ հեշտացնելով հնարավոր խնդիրների կամ անոմալիաների հայտնաբերումը:
Ձեռքով ներծծման փորձարկման թերությունները ներառում են.
1. Ժամանակատար.
Ձեռքով փորձարկումը կարող է ժամանակատար լինել, հատկապես ավելի երկար ներծծման թեստի տևողության համար, քանի որ այն հիմնված է մարդու միջամտության և դիտարկման վրա:
Մարդկային սխալի հակվածություն. Ձեռքով փորձարկումը ենթակա է մարդկային սխալների, ինչպիսիք են բաց թողնված դիտարկումները կամ թեստային սցենարների կատարման անհամապատասխանությունները, որոնք կարող են ազդել արդյունքների ճշգրտության վրա:
2. Սահմանափակելիություն.
Ձեռքով փորձարկումը կարող է հարմար չլինել լայնածավալ ծրագրերի կամ սցենարների համար, որոնք պահանջում են միաժամանակ մեծ քանակությամբ թեստային դեպքերի մշակում:
3. Ռեսուրսների ինտենսիվ.
Ձեռքով ներծծման թեստերը պահանջում են նվիրված մարդկային ռեսուրսներ փորձարկման ողջ տևողության ընթացքում, ինչը հնարավոր չէ իրականացնել բոլոր իրավիճակներում:
Ավտոմատ ներծծման փորձարկման առավելությունները.
1. Արդյունավետություն և ժամանակի խնայողություն.
Ավտոմատացված թեստավորումը զգալիորեն նվազեցնում է ներծծման թեստերը կատարելու համար պահանջվող ժամանակը և ջանքերը, քանի որ թեստային սցենարները կարող են ծրագրավորվել և ինքնաբերաբար իրականացվել:
2. Հետևողականություն.
Ավտոմատացումը ապահովում է թեստային դեպքերի հետևողական կատարում՝ նվազեցնելով մարդկային սխալի ռիսկը և ապահովելով ավելի հուսալի արդյունքներ:
Մասշտաբայնություն. ներծծման ավտոմատ թեստերը կարող են հեշտությամբ կարգավորել լայնածավալ ծրագրերը և փորձարկման դեպքերի մեծ ծավալները միաժամանակ՝ թույլ տալով ավելի համապարփակ փորձարկում:
3. Կատարման մոնիտորինգ.
Ավտոմատացված գործիքները կարող են արդյունավետորեն վերահսկել և վերլուծել կատարողականի ցուցանիշները՝ հեշտացնելով արդյունավետության վատթարացումը կամ անոմալիաները:
Ավտոմատ ներծծման փորձարկման թերությունները.
1. Նախնական կարգավորում և սպասարկում.
Ավտոմատ ներծծման թեստերը պահանջում են նախնական ներդրում ավտոմատացման ենթակառուցվածքի ստեղծման և թեստային սցենարների կամ շրջանակների պահպանման համար:
2. Սահմանափակ ենթատեքստային ըմբռնում.
Ավտոմատացված թեստերը զուրկ են տիրույթի գիտելիքներից և համատեքստային ըմբռնումից, որոնք բերում են մարդկային փորձարկողները, ինչը պոտենցիալ դժվար է դարձնում վարքագծային որոշ նրբերանգներ մեկնաբանելը:
3. Նախնական ներդրում.
Ներծծման ավտոմատացված թեստավորման իրականացումը կարող է ենթադրել զգալի նախնական ծախսեր՝ համապատասխան փորձարկման գործիքներ կամ շրջանակներ ձեռք բերելու և թեստավորման թիմին վերապատրաստելու համար:
Ներծծման փորձարկման տեսակները
Կան ներծծման թեստերի բազմաթիվ տարբեր տեսակներ, ինչը նշանակում է, որ փորձարկողները պետք է ընտրեն ներծծման թեստի տեսակը, որը նրանք պատրաստվում են օգտագործել նախքան փորձարկումը սկսելը: Ներծծման փորձարկման ամենատարածված տեսակներից մի քանիսը թվարկված են ստորև:
1. Շարունակական ներծծման թեստ
Այս տեսակի ներծծման թեստում հավելվածը ենթարկվում է շարունակական ծանրաբեռնվածության կամ երկարատև օգտագործման, որը սովորաբար տատանվում է մի քանի ժամից մինչև մի քանի օր: Նպատակն է գնահատել համակարգի կայունությունը, հիշողության կառավարումը, ռեսուրսների օգտագործումը և ժամանակի ընթացքում կատարողականի վատթարացումը:
2. Աճող ներծծման թեստ
Ավելացվող ներծծման թեստի ժամանակ հավելվածի վրա աշխատանքային ծանրաբեռնվածությունը կամ օգտագործողի ծանրաբեռնվածությունը ժամանակի ընթացքում աստիճանաբար ավելանում է: Թեստը սկսվում է համեմատաբար ցածր ծանրաբեռնվածությամբ, այնուհետև աստիճանաբար ավելացնում է այն՝ գնահատելու համակարգի վարքն ու կատարումը սթրեսի և օգտագործման բարձր մակարդակի պայմաններում:
3. Պայթել ներծծման թեստ
Պայթուցիկ ներծծման փորձարկումը ներառում է կիրառումը կարճ ժամանակաշրջանների բարձր ինտենսիվության ծանրաբեռնվածություն, որին հաջորդում են հանգստի ժամանակաշրջաններ: Ներծծման փորձարկման այս տեսակը նմանակում է սցենարներ, երբ հավելվածն ունենում է օգտատիրոջ գործունեության հանկարծակի աճ՝ թույլ տալով փորձարկողներին գնահատել, թե ինչպես է համակարգը վարվում և վերականգնվում օգտագործման նման պայթյուններից հետո:
4. Գիշերվա ներծծման թեստ
Ինչպես անունն է հուշում, գիշերվա ներծծման թեստն անցկացվում է ամբողջ գիշերվա ընթացքում, որը սովորաբար տատանվում է մի քանի ժամից մինչև ամբողջ գիշեր: Ներծծման թեստի այս տեսակն օգնում է բացահայտել ցանկացած խնդիր, որը կարող է առաջանալ, երբ հավելվածը երկար ժամանակ աշխատի առանց մարդու միջամտության կամ մոնիտորինգի:
Այն, ինչ ձեզ հարկավոր է ներծծման փորձարկում սկսելու համար
Նախքան ներծծման կատարողականի փորձարկումը սկսելը, դուք պետք է ստեղծեք համապատասխան փորձարկման միջավայր և պատրաստեք մանրամասն թեստային ծրագիր՝ ձեր թեստավորումն աջակցելու համար: Եկեք տեսնենք, թե ինչ է ձեզ հարկավոր պատրաստի նախքան ներծծման թեստերը:
1. Փորձարկման միջավայր
Ստեղծեք համապատասխան փորձնական միջավայր, որը սերտորեն նման է արտադրական միջավայրին կամ ներկայացնում է օգտագործման նախատեսվող սցենարը: Սա ներառում է ապարատային, ծրագրային ապահովումը, օպերացիոն համակարգերը և հավելվածին համապատասխան ցանցային կազմաձևերը:
2. Փորձարկման պլան
Մշակեք համապարփակ փորձարկման ծրագիր, որը նախանշում է ներծծման փորձարկման նպատակները, շրջանակը, փորձարկման սցենարները և հաջողության չափանիշները: Սահմանեք կոնկրետ չափումներ, որոնք դուք կվերահսկեք և չափեք թեստի ընթացքում, ինչպիսիք են հիշողության օգտագործումը, պրոցեսորի օգտագործումը, արձագանքման ժամանակները և սխալի մակարդակը:
3. Փորձարկման տվյալներ
Պատրաստեք կամ ստեղծեք անհրաժեշտ թեստային տվյալներ՝ օգտագործման իրատեսական օրինաչափություններն ու սցենարները մոդելավորելու համար: Սա կարող է ներառել օգտատերերի օրինակելի հաշիվների ստեղծում, տվյալների բազաների համալրում համապատասխան տվյալներով կամ սիմուլյացված օգտատերերի գործողությունների ստեղծում:
4. Թրջել փորձարկման գործիքները
Բացահայտեք և ձեռք բերեք ներծծման փորձարկման համապատասխան գործիքներ կամ շրջանակներ ներծծման փորձարկումն իրականացնելու համար: Ներծծման փորձարկման այս գործիքները կարող են ներառել կատարողականի մոնիտորինգի գործիքներ, ավտոմատացման շրջանակներ կամ բեռների ստեղծման գործիքներ՝ օգտագործողների բեռները կամ աշխատանքային ծանրաբեռնվածությունը մոդելավորելու համար: Սա հատկապես կարևոր է փորձարկման թիմերի համար, ովքեր ցանկանում են շարժվել դեպի հիպերավտոմատացում :
5. Թեստային սցենարներ
Մշակեք կամ կազմաձևեք թեստային սցենարներ կամ սցենարներ, որոնք կօգտագործվեն ներծծման թեստերը կատարելու համար: Այս սկրիպտները պետք է նմանակեն օգտագործողի տիպիկ գործողությունները, փոխազդեցությունները կամ գործարքները, որոնք ակնկալվում է, որ հավելվածը կզբաղվի թեստի ընթացքում:
Ներծծման փորձարկման գործընթացը
Ներծծման թեստն իրականացնելու մի փոքր տարբեր եղանակներ կան, ինչը նշանակում է, որ թեստերի միջև գործընթացը տարբեր կլինի: Եթե դուք նախագծում եք ներծծման թեստ ձեր հավելվածի կամ ծրագրի համար, հետևեք ստորև նշված քայլերին՝ սկսելու համար:
Քայլ 1. Սահմանել նպատակները և շրջանակը
Հստակ սահմանեք ներծծման փորձարկման գործընթացի նպատակներն ու շրջանակը: Որոշեք, թե որ հավելվածի վարքագծի, կատարողականի կամ կայունության որ ասպեկտները եք նպատակադրված գնահատել թեստի ընթացքում: Բացահայտեք որևէ կոնկրետ մտահոգիչ կամ հնարավոր ռիսկեր, որոնք պետք է լուծվեն:
Քայլ 2. Ստեղծեք թեստային սցենարներ
Մշակեք մի շարք թեստային սցենարներ, որոնք ներկայացնում են օգտագործման բնորոշ օրինաչափություններ կամ կիրառման ծանրաբեռնվածության սցենարներ: Հաշվի առեք այնպիսի գործոններ, ինչպիսիք են օգտատերերի փոխազդեցությունները, գործարքների ծավալները, տվյալների չափերը և միաժամանակ օգտագործողների բեռները: Նախագծեք սցենարներ՝ երկարաժամկետ կիրառումը մոդելավորելու համար:
Քայլ 3. Ստեղծեք թեստային միջավայր
Պատրաստեք փորձարկման միջավայրը, որպեսզի նմանվի արտադրական միջավայրին կամ մոդելավորեք օգտագործման նախատեսվող սցենարը: Կազմաձևեք սարքաշարը, ծրագրաշարը, ցանցի կարգավորումները և ցանկացած լրացուցիչ ռեսուրս, որն անհրաժեշտ է ներծծման փորձարկման համար: Համոզվեք, որ շրջակա միջավայրը կայուն է և իրական աշխարհի պայմաններին համապատասխան:
Քայլ 4. Կատարեք ներծծման թեստեր
Կատարեք ներծծման թեստը՝ գործարկելով նախապես սահմանված փորձարկման սցենարները ցանկալի տևողության համար: Դիտարկեք և հավաքեք համապատասխան կատարողական ցուցանիշներ, ինչպիսիք են հիշողության օգտագործումը, պրոցեսորի օգտագործումը, արձագանքման ժամանակները, սխալների արագությունը և համակարգի ռեսուրսների սպառումը: Անընդհատ վերահսկեք հավելվածի վարքագիծը և կատարումը թեստի ընթացքում:
Քայլ 5. Վերլուծել արդյունքները և զեկուցել
Կատարեք ներծծման թեստը՝ գործարկելով նախապես սահմանված փորձարկման սցենարները ցանկալի տևողության համար: Դիտարկեք և հավաքեք համապատասխան կատարողական ցուցանիշներ, ինչպիսիք են հիշողության օգտագործումը, պրոցեսորի օգտագործումը, արձագանքման ժամանակները, սխալների արագությունը և համակարգի ռեսուրսների սպառումը: Անընդհատ վերահսկեք հավելվածի վարքագիծը և կատարումը թեստի ընթացքում:
Ներծծման փորձարկման լավագույն փորձը
Արդյունավետ և բովանդակալից ներծծման փորձարկում ապահովելու համար կարևոր է հետևել լավագույն փորձին, որն օպտիմալացնում է թեստավորման գործընթացը և տալիս ճշգրիտ արդյունքներ: Այս լավագույն փորձը ներառում է տարբեր ասպեկտներ, ներառյալ պլանավորումը, կատարումը, մոնիտորինգը և վերլուծությունը: Հավատարիմ մնալով այս լավագույն փորձին, կազմակերպությունները կարող են բացահայտել պոտենցիալ խնդիրները, օպտիմալացնել համակարգի աշխատանքը և մատուցել ամուր և հուսալի ծրագրային արտադրանք:
1. Սահմանեք հստակ նպատակներ
Հստակ սահմանեք ներծծման փորձարկման գործընթացի նպատակները: Բացահայտեք հավելվածի վարքագծի, կատարողականի կամ կայունության որ ասպեկտները դուք նպատակադրված եք գնահատել և բարելավել թեստի միջոցով: Սա հստակ ուշադրություն կդարձնի և կուղղորդի փորձարկման ջանքերը:
2. Օգտագործեք իրատեսական թեստային սցենարներ
Մշակեք իրատեսական թեստային սցենարներ, որոնք ընդօրինակում են իրական օգտագործման օրինակները և ծանրաբեռնվածության սցենարները: Հաշվի առեք այնպիսի գործոններ, ինչպիսիք են օգտատերերի փոխազդեցությունները, գործարքների ծավալները, տվյալների չափերը և միաժամանակ օգտագործողների բեռները: Սցենարները պետք է արտացոլեն ակնկալվող օգտագործումը երկար ժամանակահատվածում:
3. Կրկնօրինակեք իրական աշխարհի թեստային միջավայրերը
Ստեղծեք փորձնական միջավայր, որը սերտորեն նման է արտադրական միջավայրին կամ մոդելավորում է նախատեսված օգտագործման սցենարը: Համոզվեք, որ սարքաշարը, ծրագրաշարը, ցանցի կազմաձևերը և այլ համապատասխան տարրերը հնարավորինս սերտորեն համընկնում են արտադրության միջավայրին:
4. Առավելագույնի հասցնել փորձարկման տեւողությունը
Անցկացրեք ներծծման թեստեր երկարատև օգտագործման համար՝ շարունակական օգտագործումը մոդելավորելու համար: Կախված դիմումից և պահանջներից՝ այս տևողությունը կարող է տատանվել մի քանի ժամից մինչև մի քանի օր կամ նույնիսկ ավելի երկար: Ավելի երկար տևողությունները թույլ են տալիս ժամանակի ընթացքում ավելի լավ բացահայտել աշխատանքի վատթարացման կամ կայունության խնդիրները:
5. Չափել հիմնական չափումները
Վերահսկեք և չափեք հիմնական կատարողական ցուցանիշները ներծծման թեստի ընթացքում, ինչպիսիք են հիշողության օգտագործումը, պրոցեսորի օգտագործումը, արձագանքման ժամանակները, սխալի արագությունը և համակարգի ռեսուրսների սպառումը: Շարունակական մոնիտորինգը հնարավորություն է տալիս բացահայտել կատարողականի ցանկացած խոչընդոտ կամ խնդիրներ, որոնք կարող են առաջանալ թեստի ընթացքում:
Ներծծման թեստերից ստացված արդյունքների տեսակները
Ներծծման թեստերից ստացված արդյունքները կարևոր են խնդիրների բացահայտման, համակարգի կատարողականի օպտիմալացման և հավելվածի հուսալիությունը ապահովելու համար: Այս արդյունքները արժեքավոր պատկերացումներ են տալիս երկարատև սթրեսի պայմաններում համակարգի վարքագծի վերաբերյալ:
1. Կատարողական ցուցանիշներ
Ներծծման փորձարկումից ստացված կատարողականի ցուցանիշները ներառում են հավելվածի կողմից օգտագործողների հարցումներին պատասխանելու համար պահանջվող ժամանակի չափումները, ինչպես նաև սխալների և թողունակության մակարդակը: Արդյունավետության չափիչները օգնում են փորձարկողներին հասկանալ՝ արդյոք հավելվածը կամ համակարգը համապատասխանում է շահագրգիռ կողմերի պահանջած չափանիշներին, թե ոչ:
2. Տեղեկամատյաններ և սխալի հաղորդագրություններ
Ներծծման թեստերը նաև ստեղծում են տեղեկամատյաններ և սխալի հաղորդագրություններ, եթե համակարգի մասերը ձախողվեն: Օճառի փորձարկման ընթացքում ստեղծված մատյան ֆայլերը կօգնեն թեստավորողներին բացահայտել սխալի հաղորդագրություններն ու նախազգուշացումները և պարզել, թե ինչու է ծրագիրը ձախողվել:
3. Հաշվետվություններ
Ներծծման փորձարկումից հետո փորձարկողները կամ ավտոմատացման ծրագրակազմը կպատրաստեն մանրամասն հաշվետվություններ, որոնք պարունակում են ներծծման փորձարկման ընթացքում արված դիտարկումներ և նշումներ, ինչպես նաև առաջարկություններ ապագայում հավելվածի աշխատանքի և կայունության օպտիմալացման համար:
Ներծծման թեստերի օրինակներ
Լավագույն միջոցներից մեկը հասկանալու, թե ինչ է ներծծման կատարողականի փորձարկումը և ինչպես է այն աշխատում, կարդալն է ներծծման թեստերի օրինակներ, ներառյալ թեստի նպատակը և քայլերը:
1. Տվյալների բազայի ներծծման թեստ
Նպատակը. Գնահատել տվյալների բազայի համակարգի աշխատանքը և կայունությունը երկարատև օգտագործման պայմաններում:
Փորձարկման սցենար.
- Մոդելավորեք իրատեսական ծանրաբեռնվածություն՝ տվյալների բազայում շարունակաբար կատարելով կարդալու և գրելու գործողությունների խառնուրդ:
- Ժամանակի ընթացքում աստիճանաբար ավելացրեք միաժամանակ օգտագործողների կամ գործարքների քանակը՝ ընդօրինակելու կայուն օգտագործումը:
- Վերահսկեք հիմնական կատարողական ցուցանիշները, ինչպիսիք են արձագանքման ժամանակը, թողունակությունը և սխալի մակարդակը:
- Անցեք թեստը 72 ժամ՝ երկարատև սթրեսի պայմաններում գնահատելու համակարգի վարքագիծը:
2. Վեբ հավելվածների ներծծման թեստ
Նպատակը. Գնահատել վեբ հավելվածի կատարումը և կայունությունը կայուն օգտագործման պայմաններում:
Փորձարկման սցենար.
- Մոդելավորեք օգտվողի իրատեսական բեռը` շարունակաբար ստեղծելով HTTP հարցումներ վեբ հավելվածում:
- Տարբերակեք հարցումների տեսակները (օրինակ՝ GET, POST, PUT) և փորձարկման սցենարները՝ օգտատերերի տարբեր փոխազդեցությունները ներկայացնելու համար:
- Աստիճանաբար ավելացրեք միաժամանակ օգտագործողների թիվը կամ պահանջեք դրույքաչափերը ժամանակի ընթացքում:
- Դիտեք հիմնական կատարողականի չափումները, ներառյալ արձագանքման ժամանակները, էջի բեռնման ժամանակը և սխալի մակարդակը:
- Գործարկեք թեստը 48 ժամ՝ երկարատև օգտագործման ընթացքում հավելվածի վարքագիծը գնահատելու համար:
Հայտնաբերված սխալների և սխալների տեսակները
ներծծման փորձարկման միջոցով
Soak թեստավորումը կարող է օգնել մշակողներին և փորձարկողներին բացահայտել բազմաթիվ տարբեր տեսակի սխալներ և սխալներ: Ներծծման կատարման փորձարկման միջոցով հայտնաբերված ամենատարածված սխալներից և սխալներից մի քանիսը մանրամասն ներկայացված են ստորև:
1. Հիշողության արտահոսք
Soak թեստը կարող է բացահայտել հիշողության արտահոսքերը, որոնք տեղի են ունենում, երբ ծրագիրն այլևս կարիք չունեցող հիշողություն չի թողարկում, ինչի արդյունքում հիշողության սպառումը ժամանակի ընթացքում անընդհատ աճում է: Ներծծման թեստի ընթացքում հիշողության օգտագործման մոնիտորինգի միջոցով կարելի է հայտնաբերել հիշողության ցանկացած աննորմալ աճ կամ արտահոսք, ինչը կօգնի բացահայտել և լուծել հիշողության հետ կապված խնդիրները:
2. Տվյալների բազայի ռեսուրսների օգտագործման սխալներ
Soak փորձարկումը կարող է բացահայտել տվյալների բազայի ռեսուրսների օգտագործման հետ կապված սխալներ: Սա ներառում է հարցումների անարդյունավետ կատարում, կապի ոչ պատշաճ մշակում, անբավարար ինդեքսավորում կամ տվյալների բազայի կողմից ռեսուրսների չափազանց մեծ սպառում: Հավելվածը ենթարկելով կայուն օգտագործման և տվյալների բազայի կատարողականի չափման մոնիտորինգի, ներծծման փորձարկումը կարող է բացահայտել տվյալների բազայի ռեսուրսների կառավարման հետ կապված խնդիրները և ուղղորդել օպտիմալացման ջանքերը:
3. Կատարողականի վատթարացում
Soak թեստավորումը հատուկ նախագծված է երկարատև օգտագործման դեպքում հավելվածի արդյունավետությունը գնահատելու համար: Այն կարող է բացահայտել արդյունավետության վատթարացման խնդիրները, ինչպիսիք են արձագանքման ժամանակի աստիճանական դեգրադացիան, հետաձգման ավելացումը կամ թողունակության նվազումը, քանի որ համակարգը ենթարկվում է կայուն ծանրաբեռնվածության: Թեստավորման ընթացքում կատարողականի ցուցանիշների մոնիտորինգի միջոցով՝ թրջող թեստը կարող է մատնանշել կատարողականի խոչընդոտները և թույլ տալ արդյունավետության օպտիմալացում:
4. Միացման սխալներ
Ներծծման փորձարկման ընթացքում կարող են հայտնաբերվել կապի սխալներ կամ խնդիրներ: Այս սխալները կարող են ներառել ժամանակի ընդհատումներ, ձախողված կապեր կամ ցանցային կապի հետ կապված խնդիրներ: Մոդելավորելով օգտատերերի կայուն փոխազդեցությունները և վերահսկելով ցանցային միացումների կայունությունը՝ ներծծման փորձարկումը կարող է բացահայտել ցանցային հաղորդակցության հետ կապված խնդիրները և օգնել լուծել կապի հետ կապված սխալները:
5. Ռեսուրսների սպառում
Ներծծման փորձարկումը կարող է ընդգծել այն սցենարները, երբ հավելվածը ժամանակի ընթացքում սպառում է համակարգի ռեսուրսները, ինչպիսիք են պրոցեսորը, հիշողությունը կամ սկավառակի տարածությունը: Վերահսկելով ռեսուրսների օգտագործումը թեստի ընթացքում՝ ներծծող թեստը կարող է հայտնաբերել իրավիճակներ, երբ հավելվածի ռեսուրսների պահանջները գերազանցում են առկա հզորությունը՝ հանգեցնելով կատարողականի վատթարացման կամ համակարգի անկայունության:
Ներծծման փորձարկման ընդհանուր չափումներ
Չափիչները օգնում են փորձարկողներին դատել, թե արդյոք հավելվածը հասնում է շահագրգիռ կողմերի, օգտագործողների և մշակողների կողմից ակնկալվող օբյեկտիվ չափանիշներին, թե ոչ: Ներծծման կատարողականի փորձարկման ժամանակ վերահսկվող ընդհանուր կատարողական ցուցանիշները մանրամասն ներկայացված են ստորև:
1. Արձագանքման ժամանակը
Չափում է օգտատիրոջ հարցումներին կամ գործողություններին պատասխանելու համար պահանջվող ժամանակը: Արձագանքման ժամանակի մոնիտորինգն օգնում է գնահատել համակարգի արձագանքունակությունը և օգտագործողի փորձը մշտական օգտագործման պայմաններում:
2. Արտադրողականություն
Ցույց է տալիս համակարգի կողմից մշակված գործարքների կամ հարցումների քանակը մեկ միավորի համար: Մոնիտորինգի թողունակությունը օգնում է գնահատել հավելվածի կարողությունը կայուն ծանրաբեռնվածությունը կարգավորելու համար:
3. Սխալների տոկոսադրույքները
Հետևում է ներծծման փորձարկման ընթացքում սխալների կամ ձախողումների առաջացմանը: Մոնիտորինգի սխալների մակարդակը օգնում է բացահայտել կայունության կամ հուսալիության հնարավոր խնդիրները և գնահատել հավելվածի կայունությունը երկարատև օգտագործման դեպքում:
4. CPU-ի օգտագործում
Չափում է հավելվածի կողմից օգտագործվող պրոցեսորի ռեսուրսների տոկոսը: CPU-ի օգտագործման մոնիտորինգն օգնում է բացահայտել աշխատանքի խցանումները կամ կոդի կատարման անարդյունավետությունը, որոնք կարող են ազդել հավելվածի աշխատանքի վրա կայուն ծանրաբեռնվածության պայմաններում:
5. Հիշողության օգտագործում
Ժամանակի ընթացքում վերահսկում է հավելվածի հիշողության սպառումը: Հիշողության օգտագործումը հետևելը օգնում է բացահայտել հիշողության արտահոսքը, հիշողության ավելցուկ սպառումը կամ հիշողության անարդյունավետ կառավարումը, որը կարող է հանգեցնել կատարողականի վատթարացման կամ անկայունության:
6. Ցանցի թողունակություն
Չափում է հավելվածի կողմից ցանցի թողունակության օգտագործումը: Ցանցի թողունակության մոնիտորինգն օգնում է բացահայտել ցանցային հաղորդակցության հետ կապված հնարավոր խնդիրները, ինչպիսիք են գերբեռնվածությունը կամ ցանցի անբավարար հզորությունը:
Ներծծում փորձարկման դեպքեր
Ներծծման փորձարկման, ինչպես նաև ծրագրային ապահովման փորձարկման այլ տեսակների դեպքում, թեստային դեպքերը կարևոր դեր են խաղում կայուն օգտագործման պայմաններում հավելվածի կատարողականը, կայունությունը և ճկունությունը համակարգված գնահատելու համար: Փորձարկման դեպքերը ուրվագծում են կոնկրետ սցենարներ, գործողություններ և ակնկալվող արդյունքներ՝ երկարաժամկետ ժամանակահատվածում հավելվածի վարքագիծը վավերացնելու համար: Արդյունավետ ներծծման թեստի դեպքեր գրելը պահանջում է տարբեր գործոնների մանրակրկիտ դիտարկում և ցանկալի արդյունքների ըմբռնում:
1. Որո՞նք են փորձարկման դեպքերը թրջող թեստավորման ժամանակ:
Ներծծման փորձարկման փորձարկման դեպքերը մանրամասն հրահանգներ են, որոնք սահմանում են կատարվող քայլերը, օգտագործվող տվյալները և ակնկալվող արդյունքները, երբ դիմումը երկարատև օգտագործման ենթարկվի: Այս թեստային դեպքերը նախատեսված են հավելվածի աշխատանքի, կայունության, ռեսուրսների կառավարման կամ այլ համապատասխան պարամետրերի որոշակի ասպեկտները վավերացնելու համար:
2. Ինչպես գրել թրջող թեստային պատյաններ
Գրավոր ներծծման թեստի դեպքերը ներառում են.
- Թեստավորման նպատակների բացահայտում և թեստավորման փուլի շրջանակի հստակ սահմանում
- Այս նպատակների հիման վրա թեստային սցենարների սահմանում
- Թեստային տվյալների որոշում, որոնք դուք պետք է օգտագործեք ներծծման թեստերի ժամանակ
- Հստակեցնելով թեստի քայլերը ներծծման փորձարկման յուրաքանչյուր փուլի համար
- Բավական ժամանակ հատկացնելը երկարաձգված ներծծման փորձարկումն իրականացնելու համար
- Ներծծման թեստերի իրականացում և արդյունքների մոնիտորինգ
- Յուրաքանչյուր ներծծման թեստի արդյունքների փաստաթղթավորում՝ դրանք օբյեկտիվորեն գնահատելու համար
- Թեստի արդյունքների վերլուծություն և ակնկալվող արդյունքների համեմատում արդյունքների հետ
3. Ներծծման փորձարկման դեպքերի օրինակներ
48 ժամվա ընթացքում հավելվածի կայուն օգտագործումը մոդելավորելու համար նախատեսված փորձնական դեպքը կարող է ներառել հետևյալ քայլերը.
- Սկսեք դիմումը:
- Դիտեք և գրանցեք հիշողության սկզբնական օգտագործումը:
- Կատարեք մի շարք գործողություններ հավելվածի ներսում բազմիցս թեստի ընթացքում:
- Պարբերաբար չափեք և գրանցեք հիշողության օգտագործումը կանխորոշված ընդմիջումներով (օրինակ՝ ամեն ժամ):
- Համեմատեք հիշողության օգտագործումը յուրաքանչյուր միջակայքում հիշողության սկզբնական օգտագործման հետ:
- Եթե հիշողության օգտագործումը մշտապես ավելանում է ընդունելի շեմից այն կողմ, նշեք այն որպես հիշողության արտահոսք:
Թեստային դեպքը, որը նախատեսված է ներծծման փորձարկման ընթացքում տվյալների բազայի միացումների կայունությունը գնահատելու համար, կարող է ներառել հետևյալ քայլերը.
- Սկսեք հավելվածը և հաստատեք տվյալների բազայի կապը:
- Կատարեք տվյալների բազայի մի շարք գործողություններ բազմիցս թեստի տևողության ընթացքում:
- Դիտեք կապի կարգավիճակը և գրանցեք կապի ցանկացած սխալ կամ անհաջողություն:
- Ավտոմատ կերպով նորից միացեք տվյալների շտեմարանին, եթե կապի ձախողում տեղի ունենա:
- Չափել կապի սխալների կամ ընդհատումների հաճախականությունը և տևողությունը:
- Եթե միացման սխալները գերազանցում են ընդունելի շեմը կամ վերամիացման ժամանակը չափազանց մեծ է, նշեք դա որպես կայունության խնդիր:
5 լավագույն ներծծման փորձարկման գործիքները, ծրագրերը և ծրագրակազմը
Ներծծման փորձարկման գործիքները ծրագրային հավելվածներ կամ շրջանակներ են, որոնք հատուկ նախագծված են ներծծման թեստերի անցկացման գործընթացը հեշտացնելու և ավտոմատացնելու համար:
Այս գործիքներն ապահովում են մի շարք գործառույթներ՝ կայուն օգտագործումը մոդելավորելու, համակարգի վարքագիծը վերահսկելու և թեստավորման փուլում կատարողական ցուցանիշները վերլուծելու համար: Նրանք օգնում են պարզեցնել ներծծման փորձարկման գործընթացը՝ ավտոմատացնելով կրկնվող առաջադրանքները, հնարավորություն տալով արդյունավետ տվյալների հավաքագրմանը և առաջարկելով առաջադեմ հաշվետվությունների և վերլուծության հնարավորություններ:
Եկեք դիտարկենք ներծծման փորձարկման լավագույն գործիքներից մի քանիսը, որոնք ներկայումս հասանելի են բիզնեսին և բոլոր մասշտաբների ծրագրային ապահովման փորձարկման թիմերին:
1. ZAPTEST
ZAPTEST-ը ծրագրային ապահովման փորձարկման գործիք է, որը հասանելի է ինչպես անվճար, այնպես էլ ձեռնարկատիրական տարբերակներով: ZAPTEST-ը կարող է ավտոմատացնել բազմաթիվ տարբեր տեսակի ծրագրային փորձարկումներ, ներառյալ ներծծման թեստը, սթրես-թեստավորումը և կատարողականի թեստավորումը՝ օգտագործելով RPA և այլ տեխնոլոգիաներ: ZAPTEST-ը հեշտ օգտագործման և համապարփակ է, իսկ անվճար ZAPTEST փաթեթը հիանալի ներածություն է թրջող փորձարկման գործիքների համար:
2. Apache JMeter
Apache JMeter-ը լայնորեն օգտագործվող կատարողականության փորձարկման գործիք է, որը մշակվել է JAVA-ում և լավագույն ներծծման փորձարկման գործիքներից մեկն այնտեղ: Որպես բաց կոդով և հարթակից անկախ ծրագրակազմ, այն թույլ է տալիս համապարփակ կատարողականության թեստավորում: Բացի այդ, JMeter-ը կարող է ինտեգրվել սելենի հետ՝ այն հարմարեցնելով նաև միավորի փորձարկման համար:
3. OpenSTA
OpenSTA-ն, որը կրճատված է Open System Testing Architecture-ի համար, բաց կոդով գործիք է, որը նախատեսված է սկրիպտային HTTP և HTTPS ծանր բեռի փորձարկման համար՝ կատարողականի չափման հնարավորություններով: Մշակված է C++ CYRANO-ի կողմից, այն հատուկ աջակցում է Microsoft Windows օպերացիոն համակարգերին:
4. Appvance
Appvance-ը ավտոմատացման գործիք է, որը ներառում է ֆունկցիոնալ, կատարողական և անվտանգության թեստավորում, ի թիվս այլ ոլորտների: Արհեստական ինտելեկտի շնորհիվ այն տրամադրում է վիրտուալ օգտատերերի վահանակ և իրական ժամանակի վերլուծություն՝ համապարփակ փորձարկման պատկերացումների համար, և այն այսօր շուկայում ամենաօգտակար ներծծման փորձարկման գործիքներից մեկն է:
5. LoadRunner
LoadRunner-ը արդյունավետության փորձարկման հզոր գործիք է, որը գերազանցում է շուկայում: Այն աջակցում է ոչ միայն կատարողականի թեստավորման, այլ նաև միավորի և ինտեգրման թեստավորման: LoadRunner-ն առաջարկում է JMeter-ից և Selenium-ից սկրիպտները ինտերֆեյսի գրադարանի միջոցով ներառելու ճկունություն: Թեև այն անվճար չէ, փորձնական տարբերակը թույլ է տալիս սահմանափակ թվով օգտվողներ:
Ներծծում է թեստավորման ստուգաթերթը, խորհուրդները և հնարքները
Եթե դուք պետք է սկսեք ներծծման փորձարկումը, համոզվեք, որ ունեք այն ամենը, ինչ ձեզ անհրաժեշտ է, նախքան փորձարկումը սկսելը: Սա նշանակում է հստակ պատկերացում այն մասին, թե ինչ եք փորձարկում, մանրամասն թեստային դեպքեր, իրատեսական թեստային միջավայր և ճիշտ թրջող փորձարկման գործիքներ:
1. Ստեղծեք ներծծման թեստի մանրամասն պլան
Պլանավորեք և պլանավորեք ներծծման թեստը՝ երկար փորձարկման ժամանակաշրջանի համար համապատասխան ժամանակ ապահովելու համար: Սահմանեք հատուկ նպատակներ և հաջողության չափանիշներ ներծծման թեստի համար և պատրաստեք համապարփակ փորձարկման միջավայր, որը սերտորեն նման է արտադրական միջավայրին:
2. Օգտագործեք ճիշտ գործիքներ
Համոզվեք, որ ապարատային և ենթակառուցվածքային ռեսուրսները ի վիճակի են կարգավորել սպասվող բեռը: Օգտագործեք ավտոմատացված փորձարկման գործիքներ՝ օգտատերերի իրատեսական սցենարները նմանակելու և բեռնվածություն առաջացնելու և ներբեռնելու անվճար ներծծման փորձարկման ծրագրակազմ՝ գործընթացը պարզեցնելու համար:
3. Անընդհատ հավաքեք տվյալներ
Վերահսկեք համակարգի ռեսուրսները ներծծման թեստի ընթացքում՝ հայտնաբերելու հիշողության արտահոսքերը, ռեսուրսների արտահոսքերը կամ այլ խնդիրներ, որոնք կարող են ազդել երկարատև գործողությունների վրա: Չափել հիմնական կատարողականի ցուցիչները (KPI), ինչպիսիք են արձագանքման ժամանակը, թողունակությունը և ռեսուրսների օգտագործումը, և ներդնել գրանցման և սխալների հետևման մեխանիզմներ՝ ստուգելու և վերլուծելու ցանկացած սխալ կամ բացառություն, որը տեղի է ունենում թեստի ընթացքում:
4. Հեշտացնել գործընթացները
Համագործակցեք ծրագրավորողների, համակարգի ադմինիստրատորների և այլ շահագրգիռ կողմերի հետ՝ բացահայտված ցանկացած խնդիր լուծելու և լուծելու համար, ինչպես նաև միշտ պարզեցված գործողություններ ապահովելու համար: Պարբերաբար կրկնեք ներծծման թեստը՝ շտկումներ կամ թարմացումներ կատարելուց հետո համակարգի կատարողականությունն ու կայունությունը հաստատելու համար:
7 սխալ և որոգայթ, որոնցից պետք է խուսափել
ներծծման թեստերի իրականացում
Կան բազմաթիվ որոգայթներ և սխալներ, որոնք փորձարկողները կարող են թույլ տալ ներծծման թեստի ժամանակ, ինչը նշանակում է, որ կարևոր է տեղյակ լինել այս մարտահրավերներին՝ ինքներդ խուսափելու համար: Ստորև ներկայացված է 7 ամենատարածված սխալների ցանկը, որոնք փորձարկողները թույլ են տալիս ներծծման փորձարկման ժամանակ:
1. Անբավարար պլանավորում
Բավականաչափ ժամանակ չհատկացելը կամ ներծծման թեստի համար հստակ սահմանված ժամանակացույց չունենալը կարող է հանգեցնել շտապ փորձարկման կամ անբավարար ծածկույթի:
2. Թեստային ոչ ճշգրիտ միջավայր
Փորձնական միջավայրի ստեղծումը, որը ճշգրիտ չի արտացոլում արտադրական միջավայրը, կարող է հանգեցնել անիրատեսական փորձարկման արդյունքների և կատարողականի բաց թողնված խնդիրների:
3. Սարքավորումների անտեսում
Չապահովելը, որ ապարատային և ենթակառուցվածքային ռեսուրսները կարող են հաղթահարել ակնկալվող բեռը, կարող է հանգեցնել անսպասելի աշխատանքի խոչընդոտների և անվստահելի փորձարկման արդյունքների:
4. Համապատասխան մոնիտորինգի բացակայություն
Ներծծման փորձարկման ընթացքում հիմնական կատարողականի ցուցանիշները վերահսկելու և չափելու ձախողումը կարող է հանգեցնել համակարգի վարքագծի վերաբերյալ պատկերացումների բացակայության և կատարողականի դեգրադացիան հայտնաբերելու բաց թողնված հնարավորությունների:
5. Արտահոսքեր նայող
Ներծծման փորձարկման ընթացքում ռեսուրսների արտահոսքի կամ հիշողության արտահոսքի ակտիվորեն չվերահսկելը կարող է երկարատև աշխատանքի հետ կապված խնդիրներ առաջացնել և ժամանակի ընթացքում վատթարացնել համակարգի աշխատանքը:
6. Սխալների ոչ համարժեք հետևում
Սխալների հետագծման և գրանցման կայուն մեխանիզմների ներդրման անտեսումը կարող է դժվարացնել ներծծման թեստի ընթացքում առաջացող խնդիրների բացահայտումն ու ախտորոշումը:
7. Չգործել թրջող թեստի արդյունքների վրա
Պարզապես ներծծող թեստն առանց արդյունքների վերլուծության և գործողությունների անցնելը կարող է խաթարել թեստի նպատակը: Կարևոր է վերանայել արդյունքները, բացահայտել կատարողականի միտումները և անդրադառնալ ցանկացած խնդրի կամ բարելավման առաջարկություններին:
Եզրակացություն
Ներծծման փորձարկումը վճռորոշ դեր է խաղում ծրագրային ապահովման հավելվածների հուսալիության, կայունության և կատարողականի երկարատև օգտագործման դեպքում: Այն թույլ է տալիս կազմակերպություններին երկար ժամանակ գնահատել հավելվածի վարքագիծը, բացահայտել թաքնված վրիպակներ կամ սխալներ և օպտիմալացնել կատարողականությունն ու կայունությունը:
Անկախ նրանից, թե ներծծման փորձարկման մասնագիտացված գործիքների օգնությամբ կատարվում է ձեռքով, թե ավտոմատացված, թրջող թեստը փորձարկման գործընթացի էական մասն է, որը արժեքավոր պատկերացումներ է տալիս հավելվածի դիմացկունության և ճկունության վերաբերյալ: