k6 - Karga Probetarako Garatzaileen Esperientzia Onena

Errendimendua probatzeko industriak eraldaketa erradikala izan du azken urteetan. Tradizioz, karga probak errendimendua probatzeko ingeniariek eta QA ingeniariek eta probatzaileek egin dituzte. Eginkizun horiek normalean unitate independente gisa funtzionatzen zuten, errendimendu probak egiten zituzten garatzaileek aplikazioak eraikitzen amaitu zutenean.

Softwareak garatzeko taldeen artean printzipio bizkorrak onartuta, errendimendu probak garapen prozesuan askoz lehenago hasten dira, deiturikoak shift-ezkerrerako probak . Errendimendu probak QA sailaren esku utzi beharrean, software taldeek probak modu independentean edo QA ingeniariekin lankidetzan egiten dituzte.

Probak ezkerrera aldatzearen beste abantaila bat software taldeetan errendimendu probak hartzea gero eta handiagoa da. Erabiltzaile berri horietako askok beraien barnean ondo moldatzen diren tresnak eskatzen dituzte eguneroko lan-fluxua , ahalbidetuz probatu aldizka ahalegin minimoarekin. JMeter eta LoadRunner bezalako tresna tradizionalak ez ziren horren ondo moldatzen, eta, horren ordez, tresna belaunaldi berri batera jotzen ari dira, k6 bezalakoa.




K6 agerian

k6 doakoa da eta kode irekiko karga probatzeko tresna errendimendu probak esperientzia emankorra eta atsegina bihurtzea helburu.

Tresna script-a da, eta k6 probak idatzita daude Javascript , zure probak inguruko programazio lengoaia ezagunenetako batean idazteko gaitasuna emanez.


Scripting hizkuntza eta API indartsu batek zure scriptetan mundu errealeko eszenatokiak imitatzeko beharrezko malgutasuna aurkezten dute. Aplikazioek eta sistemek etengabe garatzen dutenez, zure probak modularizatzeko gaitasuna izateak izugarri hobetuko du proben prozesuaren eraginkortasuna.

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

k6 Windows, Linux eta Mac zerbitzuetarako eskuragarri dagoen Komando-lerroko tresna da. Bestela, Docker-en irudi ofiziala dago.

Errendimendu proba k6-rekin egitea bash komandoa exekutatzea bezain erraza da:


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

Scripting ezaugarri aipagarri batzuk hauek dira:

  • Javascript API sendoak eta ondo dokumentatuak probako scriptetarako
  • Pertsonalizazio sakona konfigurazio aukera anitzen bidez
  • Eszenatokiak
  • Parametrizazioa inguruneko aldagaien bidez
  • Webguneen euskarria
  • Bizi-zikloaren kakoak konfigurazioa eta desegitea pertsonalizatzeko
  • Egiaztapenak, metrikak, etiketak, cookieak ...


Saio grabagailua eta bihurgailuak

Kargak probatzeko tresna sofistikatuenak direnez, k6-k erabiltzaileen saio batetik karga probak sortzea errazten duen saio grabagailua du. Arakatzaile edo erabiltzaile saio batetik HAR fitxategia soilik eman behar duzu eta grabagailuak k6 proba sortuko du zuretzat. Hori bereziki lagungarria da bazara kargatu proben webguneak .

Gainera, beste tresna batzuek teknologia desberdinetako k6 probak autogeneratzen lagun zaitzakete:


  • JMeter bihurgailua: JMeter .jmx fitxategia k6 script bihurtzeko.
  • Postman converter: Postman bilduma k6 script bihurtzeko.
  • OpenAPI bihurgailua: Swagger / OpenAPI zehaztapena k6 script bihurtzeko.
  • Arakatzailearen luzapena: k6 script bat sortu arakatzailearen saio batetik. K6 Cloud-eko erabiltzaileentzat soilik eskuragarri.

Probak egiten hasteko grabagailua eta bihurgailuak erabili behar ez dituzun arren, tresna hauek zure taldea k6an sartzeko edo probak azkarrago idazteko lagungarri izan daitezke.

Saio grabagailua eta bihurgailua



Emaitzen bistaratzea

Berez, k6-k emaitza kontsolan ematen du. Gainera, hainbat integrazio daude eskuragarri zure azterketaren emaitzak aztertzen eta bistaratzen laguntzeko:

  • Apache Kafka
  • k6 Hodeia
  • DataDog
  • InfluxDB + Grafana
  • JSON
  • NewRelic
  • EstatistikakD

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




Etengabeko eta automatizatutako probak

Proben komunitatean, automatizazioa da erakunde askoren azken helburua. Aplikazioa eta sistema aldatzen direnean, maiz probak automatizatzeak eta exekutatzeak errendimendu atzerakadak lehenago atzematen lagunduko dizute.

Dokumentazioak CI / CD tresna ezagunenen gidak eskaintzen ditu, k6 zure CI kanalizazioetan ahaleginik gabe integratzeko.

  • Azure Pipelines
  • CircleCI
  • GitHub Ekintzak
  • GitLab
  • Jenkins
  • TeamCity

K6 taldeak uste du egitea dela helburuetara bideratutako probak egitea automatizaziorako ezinbesteko baldintza da. Proba automatikoak egitean, probaren helburu nagusia sistemaren errendimendu itxaropenak balioztatzea izan behar da lehenik eta, bigarrena, sistemak errendimendu helburuak betetzen ez dituen ohartaraztea. Adibidez, balioztatzea:

  • Eskaeren% 95ari erantzuteko denbora ez da 600 ms-tik gorakoa.
  • Sistemak ez du% 0,5 baino gehiagoko akatsik sortzen.

K6-n, itxaropen hauek definitzen dituzu Atalaseak zure proban. Zure sistemara iristen ez bada, k6-k zero irteera kodea itzultzen duen hutsaren berri emango dizu.


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

Gai honi buruz gehiago jakin nahi baduzu, irakurri k6 gida errendimendu proben automatizazioa eta Atalaseak dokumentazioa.



k6 Hodeia

k6 Hodeia iturburu irekiko k6 tresnarekin batera datorren SaaS produktu komertziala da. k6 OSS doakoa da eta hainbat ditu integrazioak karga probak zure azpiegituran kudeatzeko. K6 Cloud aukerako zerbitzua da, karga probatzeko azpiegiturak eta sistemak eskaintzen ditu zure errendimendua probatzeko ahaleginetan laguntzeko.

K6 Cloud zer den hobeto ulertzeko, aipa ditzagun bere ezaugarri batzuk:

  • Eskalatu probak horizontalean eta kokapen geografiko desberdinetan.
  • Gorde eta ikusi proben emaitzak.
  • Errendimendu arazoak automatikoki detektatu.
  • Korrelatu hainbat probaren arteko emaitzak.
  • GUI proben eraikitzailea duten erabiltzaile onartuak.
  • Antolatu taldeak eta probak kokapen zentral batean.
  • Eman dedikatu laguntza.

k6 Hodeia



Komunitatea

K6 komunitatea benetan solidarioa eta lagungarria da, proiektuaren arrakastaren indarra.

K6-rekin hasten bazara, ez ahaztu haietara iristea Lasaitasuna edo komunitate foroa edozein motatako galderetarako. Gai desberdinetarako hainbat kanal eta kategoria daude, hala nola #grafana, #dokumentazioa, # feedback, # eztabaida, etab.

Proiektuaren barnealdean interesa dutenentzat, jarraitu proiektua hemen GitHub .



Ondorioa

Mezu honek k6-ren aurkezpena aurkeztu nahi du - karga probatzeko tresna zirraragarrienetakoa. Gehiago k6-k zer eskaintzen duen ikasi nahi baduzu, irakurri gomendatzen dizugu k6 Dokumentuak .

Lau urteko bizitzarekin, k6 ezaugarri ugari aberastu da eta ondo finkatutako tresnekin lehiatzen da, garatzaileetan, DevOps-en eta komunitate probatzaileetan izarreko adopzioa lortuz.

K6 taldeak eta komunitateak garatzaileengan oinarritutako errendimendua probatzeko tresna eraiki dute aro berri baterako eskaera eta beharrak asetzen dituena.