Testy wydajnościowe K6 – uruchamianie na Gitlabie

K6

 791 

Testy wydajnościowe K6 – uruchamianie na Gitlabie to kolejny wpis w którym chcemy Wam pokazać możliwości tego narzędzia i jego wykorzystania w codziennej pracy. Jest to kolejny z wpisów przedstawiających Wam alternatywę dla JMetera czy Gatlinga. Z tego powodu, że testerzy poszukują różnych alternatyw, wypróbuj to co będzie dla Ciebie najbardziej odpowiednie. 

Czym jest K6

O narzędziu K6 pisaliśmy kilka tygodni wcześniej – robiąc Wam krótkie wprowadzenie do tworzenia testów wydajnościowych z wykorzystaniem tego narzędzia. W ramach naszych wpisów przedstawialiśmy też w jaki sposób tworzyć raporty z wykorzystaniem tego narzędzia. 

Tworzenie gitlab-ci.yml

Chcąc uruchamiać testy z poziomu gitlaba nasze testy będą opierać się o stworzenie pliku gitlab-ci.yml, który będzie naszym centrum dowodzenia i zarządzania. Do uruchomienia naszych testów konieczne będzie:

  • runner na gitlabie, na podstawie którego testy będą uruchamiane (pytaj Devopsów o tag)
  • obraz dockerowy k6 – dostępne na hub.docker.com
  • nasz test zapisany jako test.js
I. Najprostsza wersja

W naszym projekcie testowym tworzymy plik gitlab-ci.yml a następnie uzupełniamy go w najprostszy sposób:

perfornamce_test:
tags:
  - nazwa-runnera
image:
  name: loadimpact/k6:latest
  entrypoint: ['']
script:
  - k6 run script.js
1. Pierwszy element to nazwa testu
2. nazwa naszego runnera na którym uruchamiamy testy (zapytaj devopsów o tag, jeżeli nie korzystałeś)
3. image – nazwy dockerowych obrazów z których skorzystamy
4. skrypt – polecenie którym uruchamiamy testy
 
II. Tworzenie stage

W ramach naszych testów może zachodzić konieczność tworzenia faz egzekucji testów. 

stages:
- test
- test2
III. Raporty i artefakty

Jeżeli chcesz możesz generować i potem zapisywać swój raport. Dzięki temu będziesz mógł analizować dokładniej wyniki, lub przedstawiać je innym w formie graficznej. 

artifacts:
      when: always
      paths:
          - ./report/  
  expire_in: 10 days

Schedules

Jeżeli chcemy tak przygotowane testy w ramach naszego repozytorium, możemy uruchamiać cyklicznie. Z pomocą przychodzi nam Gitlab i zakładka CI/CD – Schedules:

Testy wydajnościowe K6 - uruchamianie na Gitlabie - schedules

Rozwiązanie to jest korzystne, gdyż dzięki niemu możemy wykorzystywać możliwości K6 – bez konieczności zakupu płatnego dashboardu. Oczywiście – zachodzi konieczność optymalizacji, by uruchamiane testy rzeczywiście pokrywały się z tym co powinno się zadziać. 

Podsumowanie. 

Artykuł Testy wydajnościowe K6 – uruchamianie na Gitlabie – jest kolejnym krokiem dla Was by rozpocząć przygodę z tym narzędziem, W ramach kategorii dotyczącej testów wydajnościowych  będziemy poruszać wiele narzędzi. Przodownikiem z racji popularności będzie JMeter, jednak znajdziemy tam różne alternatywy, jak wspomniany K6, czy Gatling, oraz inne narzędzia wykorzystywane przez testerów.