Testy wydajnościowe K6 – uruchamianie na Bitbucketcie 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 kilkanaście 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 bitbucket-pipelines.yml
Chcąc uruchamiać testy z poziomu Bitbucketa nasze testy będą opierać się o stworzenie pliku bitbucket-pipelines.yml, który będzie naszym centrum dowodzenia i zarządzania. Do uruchomienia naszych testów konieczne będzie:
- runner na Bitbucketa na podstawie którego testy będą uruchamiane
- obraz dockerowy k6 – dostępne na hub.docker.com.
- nasz test zapisany jako test.js
I. Najprostsza wersja
W naszym projekcie testowym tworzymy plik bitbucket-pipelines.yml a następnie uzupełniamy go w najprostszy sposób:
pipelines:
default:
- step:
name: Performance Tests
script:
- echo "Building my application in Node.js container..."
image:
name: loadimpact/k6:latest
entrypoint: ['']
script:
- k6 run script.js
II. Tworzenie stepów
W ramach naszych testów może zachodzić konieczność tworzenia faz egzekucji testów.
pipelines:
default:
- step:
name: Performance 1
script:
- echo "Building..."
- step:
name: Performance 2
script:
- echo "Running tests..."
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:
- report/**
Schedules
Jeżeli chcemy tak przygotowane testy w ramach naszego repozytorium, możemy uruchamiać cyklicznie. Z pomocą przychodzi nam Bitbucket i zakładka CI/CD – Schedules:
Rozwiązanie to jest korzystne, gdyż łatwo możemy wdrożyć nasze rozwiązanie w proces CI/CD bądź uruchamiać wcześniej zdefiniowane testy na środowisku. 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 Bitbucketcie – 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.