За апошнія гады індустрыя тэставання прадукцыйнасці перажыла радыкальную трансфармацыю. Традыцыйна выпрабаванні нагрузкі праводзілі інжынеры па тэсціраванні прадукцыйнасці, а таксама інжынеры па кантролі якасці і тэсціроўшчыкі. Гэтыя ролі звычайна працавалі ў якасці незалежных падраздзяленняў, правяраючы прадукцыйнасць пасля таго, як распрацоўшчыкі скончылі стварэнне прыкладанняў.
З прыняццем гнуткіх прынцыпаў сярод каманд распрацоўшчыкаў праграмнага забеспячэння тэставанне прадукцыйнасці па меры актыўнасці пачынаецца значна раней у працэсе распрацоўкі, так званай тэсціраванне па змене ўлева . Замест таго, каб пакідаць тэсціраванне прадукцыйнасці аддзелу кантролю якасці, каманды праграмнага забеспячэння зараз праводзяць тэставанне самастойна альбо ў супрацоўніцтве з інжынерамі кантролю якасці.
Яшчэ адна перавага зрушэння тэставання ўлева - гэта ўсё большае павелічэнне ўзроўню тэставання прадукцыйнасці ў праграмных камандах. Але многія з гэтых новых карыстальнікаў патрабуюць інструментаў, якія выдатна ўпісваюцца ў іх паўсядзённы працоўны працэс , дазваляючы ім рэгулярна тэстуйце з мінімальнымі намаганнямі. Традыцыйныя інструменты, такія як JMeter і LoadRunner, не падыходзілі так добра, і замест гэтага яны звяртаюцца да новага пакалення інструментаў, такіх як k6.
k6 - гэта бясплатная і інструмент тэсціравання нагрузкі з адкрытым зыходным кодам з мэтай зрабіць тэставанне прадукцыйнасці прадуктыўным і прыемным.
Інструмент можна падключыць да сцэнарыяў, а тэсты k6 напісаны на Javascript , што дае магчымасць пісаць тэсты на адной з самых вядомых моў праграмавання.
Магутная мова сцэнарыяў і API прадстаўляюць неабходную гнуткасць для імітацыі рэальных сцэнарыяў у вашых сцэнарыях. Паколькі прыкладання і сістэмы пастаянна развіваюцца, магчымасць мадулярызацыі тэстаў рэзка павысіць эфектыўнасць працэсу тэставання.
k6 - гэта інструмент каманднага радка, даступны для Windows, Linux і Mac. Акрамя таго, ёсць афіцыйны малюнак Docker.
Выканаць тэст прадукцыйнасці з k6 так жа проста, як запусціць каманду bash:
Некалькі прыкметных асаблівасцей сцэнарыяў:
Як і самыя складаныя інструменты тэсціравання нагрузкі, k6 мае рэгістратар сеансаў, які палягчае стварэнне тэстаў нагрузкі з карыстацкай сесіі. Вам трэба толькі прадаставіць файл HAR з браўзэра альбо сеансу карыстальніка, і рэгістратар створыць для вас тэст k6. Гэта асабліва карысна, калі вы вэб-сайты для тэставання нагрузкі .
Акрамя таго, іншыя інструменты могуць дапамагчы вам аўтагенераваць тэсты k6 з розных тэхналогій:
Хоць вам не трэба выкарыстоўваць дыктафон і канвэртары, каб пачаць тэставанне, гэтыя інструменты могуць дапамагчы хутчэй уключыць вашу каманду ў k6 альбо стварыць тэсты.
Па змаўчанні k6 выводзіць вынік на кансоль. Акрамя таго, даступна некалькі інтэграцый, якія дапамогуць вам падчас аналізу і візуалізацыі вынікаў тэстаў:
У супольнасці тэсціравання аўтаматызацыя з'яўляецца канчатковай мэтай для многіх арганізацый. Калі ваша прыкладанне і сістэма змяняюцца, аўтаматызацыя і правядзенне частых тэстаў дапамогуць вам раней улавіць рэгрэс прадукцыйнасці.
У дакументацыі прыведзены рэкамендацыі па большасці папулярных інструментаў CI / CD, якія дазваляюць лёгка інтэграваць k6 у канвееры CI.
Каманда k6 лічыць, што выраб тэставанне мэтанакіраванага з'яўляецца неабходным умовай для аўтаматызацыі. Пры запуску аўтаматызаваных тэстаў асноўная мэта вашага тэсту павінна быць па-першае, каб праверыць чаканні прадукцыйнасці вашай сістэмы, а па-другое, папярэдзіць вас, калі сістэма не адпавядае мэтам прадукцыйнасці. Напрыклад, праверка, што:
У k6 вы вызначаеце гэтыя чаканні з Парогі у вашым тэсце. Калі ваша сістэма не дасягне іх, k6 паведаміць вам пра няспраўнасць, якая вяртае ненулявы код выхаду.
Калі вы хочаце даведацца больш пра гэтую тэму, прачытайце кіраўніцтва k6 аўтаматызацыя тэсціравання прадукцыйнасці і дакументацыя 'Парогі'.
k6 Воблака з'яўляецца камерцыйным прадуктам SaaS, які суправаджае інструмент k6 з адкрытым зыходным кодам. k6 OSS бясплатны і мае некалькі інтэграцыі кіраваць тэстамі нагрузкі ў вашай уласнай інфраструктуры. Воблака k6 - гэта неабавязковая паслуга, якая забяспечвае інфраструктуру і сістэмы тэсціравання нагрузкі, якія дапамогуць вам правесці выпрабаванні.
Каб лепш зразумець, што такое воблака k6, пералічым некалькі яго асаблівасцей:
Суполка k6 сапраўды падтрымлівае і дапамагае - сіла поспеху праекта.
Калі вы пачынаеце з k6, не забудзьцеся звязацца з імі Слабасць альбо форум супольнасці для любых тыпаў пытанняў. Ёсць некалькі каналаў і катэгорый для розных тэм, такіх як #grafana, #documentation, #feedback, #duscussion і г.д.
Для тых, хто цікавіцца ўнутранымі элементамі праекта, прытрымлівайцеся праекту ў GitHub .
Гэты пост накіраваны на прадстаўленне ўводу k6 - аднаго з самых захапляльных інструментаў тэсціравання нагрузкі. Калі вы хочаце даведацца, што яшчэ можа прапанаваць k6, рэкамендуем прачытаць k6 Дакументы .
Усяго за чатыры гады жыцця k6 стаў шматфункцыянальным і канкурыраваў з добра вядомымі інструментамі, атрымаўшы зорнае прызнанне сярод распрацоўшчыкаў, DevOps і супольнасцей, якія тэстуюць.
Каманда k6 і супольнасць стварылі інструмент тэсціравання прадукцыйнасці, арыентаваны на распрацоўшчыкаў, які адпавядае попыту і патрэбам новай эры.