k6 - Բեռնվածքի փորձարկման լավագույն մշակողի փորձը

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

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

Թեստավորման ձախ կողմը տեղափոխելու մեկ այլ առավելություն `ծրագրային ապահովման թիմերում կատարողականի փորձարկման ընդունման աճող աճ: Բայց այս նոր օգտվողներից շատերը պահանջում են գործիքներ, որոնք լավ տեղավորվում են իրենց մեջ ամենօրյա աշխատանքային հոսք , թույլ տալով նրանց պարբերաբար փորձարկել նվազագույն ջանքերով: Ավանդական գործիքները, ինչպիսիք են JMeter- ը և LoadRunner- ը, այնքան էլ հարմար չէին, և փոխարենը նրանք դիմում են գործիքների նոր սերնդի, ինչպես k6- ն:




K6- ի բացում

k6- ն անվճար է և բաց կոդով բեռի փորձարկման գործիք նպատակ ունենալով կատարողականի փորձարկումը դարձնել արդյունավետ և հաճելի փորձ:

Գործիքը սցենարական է, և k6 թեստերը գրված են դրանում Javascript հնարավորություն տալով գրել ձեր թեստերը շրջակայքում ամենահայտնի ծրագրավորման լեզուներից մեկում:


Գրությունների հզոր լեզուն և API- ն անհրաժեշտ ճկունություն են ներկայացնում ձեր սցենարներում իրական սցենարները կրկնօրինակելու համար: Քանի որ ծրագրերն ու համակարգերը շարունակաբար զարգանում են, ձեր թեստերը մոդուլյացնելու ունակություն ունենալը կտրուկ կբարձրացնի ձեր փորձարկման գործընթացի արդյունավետությունը:

img / performance / 81 / k6-the-best-developer-experience.png

k6- ը հրամանի տողի գործիք է, որը հասանելի է Windows- ի, Linux- ի և Mac- ի համար: Այլընտրանքորեն, կա պաշտոնական Դոկերի պատկեր:

K6- ով կատարողականի թեստ անցկացնելը նույնքան պարզ է, որքան bash հրամանը:


img / performance / 81 / k6-the-best-developer-experience-2.png

Սցենարների մի քանի ուշագրավ հատկություններ են.

  • Ուժեղ և լավ փաստաթղթավորված Javascript API- ներ ՝ փորձարկման սցենարների համար
  • Խորը հարմարեցում ՝ կազմաձևման բազմաթիվ տարբերակների միջոցով
  • Սցենարներ
  • Պարամետրավորում շրջակա միջավայրի փոփոխականների միջոցով
  • Websockets աջակցություն
  • Կյանքի ցիկլի կեռիկներ ՝ կարգավորումն ու արմատախիլը հարմարեցնելու համար
  • Չեկեր, չափումներ, պիտակներ, քուքիներ


Նիստերի ձայնագրիչ և փոխարկիչներ

Որպես բեռի փորձարկման առավել բարդ գործիքներ, k6- ն ունի նստաշրջանի ձայնագրիչ, որը նպաստում է օգտագործողի նստաշրջանից բեռի թեստերի ստեղծմանը: Դուք միայն պետք է տրամադրեք HAR ֆայլ զննարկիչից կամ օգտագործողի նստաշրջանից, և ձայնագրիչը կստեղծի k6 թեստը ձեզ համար: Սա հատկապես օգտակար է, եթե դուք այդպիսին եք բեռի փորձարկման կայքեր ,

Բացի այդ, այլ գործիքներ կարող են օգնել ձեզ ավտոմատացնել k6 թեստերը տարբեր տեխնոլոգիաներից.


  • JMeter փոխարկիչ. Փոխարկել JMeter .jmx ֆայլը k6 գրության:
  • Փոստատարի փոխարկիչ. Փոստատարի հավաքածուն վերածել k6 սցենարի:
  • OpenAPI փոխարկիչ. Փոխել Swagger / OpenAPI բնութագիրը k6 գրության:
  • Owsննարկչի ընդլայնում. Զննարկչի նստաշրջանից ստեղծեք k6 սցենար: Հասանելի է միայն k6 Cloud- ի օգտագործողների համար:

Չնայած փորձարկում սկսելու համար ձեզ հարկավոր չէ օգտագործել ձայնագրիչն ու փոխարկիչները, այդ գործիքները կարող են օգնել ավելի արագ ձեր թիմը տեղափոխել k6, կամ գրել ձեր թեստերը:

Նիստերի ձայնագրիչ և փոխարկիչ



Արդյունքի արտացոլում

Լռելյայն, k6- ը արդյունքը դուրս է բերում մխիթարիչ: Բացի այդ, մի քանի ինտեգրումներ մատչելի են, որոնք կօգնեն ձեզ ձեր թեստի արդյունքների վերլուծության և պատկերացման ընթացքում.

  • Ապաչե Կաֆկա
  • k6 Ամպ
  • DataDog
  • InfluxDB + Grafana
  • SՍՈՆ
  • NewRelic- ը
  • StatsD

img / performance / 81 / k6-the-best-developer-experience-4.png




Շարունակական և ավտոմատացված փորձարկում

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

Փաստաթղթերը ուղեցույցներ են տալիս ամենատարածված CI / CD գործիքներին, որոնք թույլ են տալիս ջանքեր գործադրել k6- ը ինտեգրելու ձեր CI խողովակաշարերին:

  • Լազուրային խողովակաշարեր
  • CircleCI
  • GitHub գործողություններ
  • GitLab
  • Enենքինս
  • TeamCity

K6- ի թիմը կարծում է, որ պատրաստելը թեստավորման նպատակասլացություն ավտոմատացման համար անհրաժեշտ պայման է: Ավտոմատացված թեստեր վարելիս ձեր թեստի հիմնական նպատակը պետք է լինի նախ `հաստատել ձեր համակարգի գործունեության սպասելիքները, և երկրորդ` նախազգուշացնել ձեզ, եթե համակարգը չի համապատասխանում կատարման նպատակներին: Օրինակ ՝ վավերացնելով այն.

  • Հարցումների 95% -ի համար պատասխանելու ժամանակը 600 մմ-ից բարձր չէ:
  • Համակարգը չի առաջացնում ավելի քան 0,5% սխալներ:

K6- ում այս ակնկալիքները սահմանում ես հետևյալով Շեմեր ձեր քննության մեջ: Եթե ​​ձեր համակարգը չի հասնում դրանց, k6- ը ձեզ կտեղեկացնի ելքի ոչ զրոյական ծածկագիրը վերադարձնելու ձախողման մասին:


img / performance / 81 / k6-the-best-developer-experience-5.png

Եթե ​​ցանկանում եք ավելին իմանալ այս թեմայի մասին, կարդացեք k6- ի ուղեցույցը կատարողականի փորձարկման ավտոմատացում և Շեմերի փաստաթղթերը:



k6 Ամպ

k6 Ամպ SaaS- ի կոմերցիոն արտադրանքն է, որն ուղեկցում է բաց կոդով k6 գործիքին: k6 OSS- ն անվճար է օգտագործման համար և ունի մի քանիսը ինտեգրումներ կառավարել բեռի փորձարկումները ձեր սեփական ենթակառուցվածքներում: K6 Cloud- ը ընտրովի ծառայություն է, որն ապահովում է բեռի փորձարկման ենթակառուցվածքն ու համակարգերը `ձեզ օգնելու համար ձեր կատարողականի փորձարկման ջանքերում:

Որպեսզի ավելի լավ հասկանանք, թե որն է k6 Cloud- ը, թվարկենք դրա մի քանի առանձնահատկություններ.

  • Սանդղակի թեստերը հորիզոնական և տարբեր աշխարհագրական վայրերում:
  • Պահպանեք և պատկերացրեք թեստի արդյունքները:
  • Ավտոմատ կերպով հայտնաբերեք կատարման խնդիրները:
  • Արդյունքները կապել տարբեր թեստերի միջեւ:
  • Օգտագործողներ GUI թեստերի ստեղծողով:
  • Կազմակերպեք թիմեր և թեստեր կենտրոնական վայրում:
  • Տրամադրեք նվիրված աջակցություն:

k6 Ամպ



Համայնք

K6 համայնքն իսկապես աջակցում և օգտակար է ՝ ծրագրի հաջողության ուժը:

Եթե ​​դուք սկսում եք k6- ից, մի մոռացեք դրանց մեջ մտնել Դանդաղ կամ համայնքային ֆորում ցանկացած տիպի հարցերի համար: Կան մի քանի ալիքներ և կատեգորիաներ տարբեր թեմաների համար, ինչպիսիք են # գրաֆանան, # փաստաթղթավորումը, # հետադարձ կապը, # քննարկումը և այլն:

Theրագրի ներքին մասով հետաքրքրվողների համար հետևեք նախագծին GitHub ,



Եզրակացություն

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

Ընդամենը չորս տարվա կյանք ունենալով, k6- ը հարստացել է հատկություններով և մրցում է հաստատված գործիքների հետ ՝ ստանալով աստղային որդեգրում մշակողների, DevOps- ի և փորձարկման համայնքներում:

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