K6 News 2025 cz. 2

K6 News

Loading

K6 News 2025 cz. 2 – to wpis w którym będę przedstawiał Wam newsy związane z narzędziem do testów wydajnościowych – K6. Jeżeli jesteś zainteresowany innymi wpisami dotyczącymi K6, zapraszamy do odpowiedniego działu.

Wprowadzenie

Tworząc testy wydajnościowe z wykorzystaniem K6 może spotkać się z sytuacjami, że będziemy potrzebowali dodatkowego wsparcia by napisać nasze testy. Czasami będzie to spowodowane faktem niemożności obsłużenia w inny sposób danego przypadku, czasami też po prostu skorzystanie z porad osób bardziej doświadczonych.

Jako Champion narzędzia K6 mam na celu rozpowszechnianie wiedzy o tym narzędziu, promowanie wartości jakie nam przyświecają.

 

Grafana k6 v0.58 release

W ramach upgrade, wydano nową wersję K6 pod nr 0.58. Pełny wpis o zmianach w aplikacji możesz przeczytać tutaj.

Co zawiera release:

  • Wprowadzenie helperów do testów funkcjonalnych
  • Dodano wsparcie dla helperów ułatwiających tworzenie oraz wykonywanie testów funkcjonalnych.
  • Nowe możliwości komendy k6 new
  • Komenda k6 new obsługuje teraz szablony oraz ProjectID, co umożliwia szybsze i bardziej ustandaryzowane rozpoczęcie pracy z testami.
  • Ulepszony moduł k6/experimental/csv
  • W module k6/experimental/csv wprowadzono nową opcję asObjects, pozwalającą na odczyt danych w formacie obiektowym, co upraszcza ich wykorzystanie w testach.
  • Zakończenie wsparcia dla k6/experimental/browser
  • Zakończono wsparcie dla modułu k6/experimental/browser. Zaleca się korzystanie z oficjalnego modułu k6/browser, który jest aktywnie rozwijany i wspierany.
  • Przeniesienie niepublicznych API do pakietu wewnętrznego (internal)
  • Większość niepublicznych interfejsów API została przeniesiona do pakietu internal, w celu uporządkowania struktury kodu i ograniczenia dostępu do wewnętrznych komponentów.

Nowe funkcje:

  • Usunięcie modułu k6/experimental/browser
  • (#4161) Usunięto wsparcie dla modułu k6/experimental/browser. Użytkownikom zaleca się migrację do stabilnego i oficjalnie wspieranego modułu k6/browser, zgodnie z udostępnionymi instrukcjami.
  • Przeniesienie niepublicznych API do pakietu internal
  • (#4133) Wszystkie interfejsy API, które nie są publicznie wykorzystywane, zostały przeniesione do pakietu internal. Zmiana została oparta na analizie publicznie dostępnych rozszerzeń dla k6 i może spowodować problemy z prywatnymi rozszerzeniami. W kolejnych wersjach planowane są dalsze zmiany i możliwe usunięcia lub aktualizacje API.
  • Automatyczne wsparcie dla TypeScript
  • (#4292) Skrypty z rozszerzeniem .ts są teraz automatycznie rozpoznawane i wspierane jako TypeScript. Jednocześnie wycofano tryb zgodności experimental_enhanced, który stał się zbędny dzięki nowym mechanizmom obsługi TypeScript.

Usprawnienia UX:

  • Ostrzeżenia przy użyciu skróconych opcji, które nadpisują scenarios (#4176)
  • Dodano ostrzeżenie, gdy skrócone flagi (np. -u, -d) kolidują z ustawionymi scenariuszami.
  • Zmiana prefiksu katalogu danych przeglądarki (#4293)
  • Prefiks folderów z danymi przeglądarki zmieniono z xk6-browser-data- na k6browser-data-, aby zachować spójność z oficjalnym brandingiem.
  • Wsparcie dla schematu file:// w API ładujących pliki (#4513)
  • Dodano obsługę adresów file:// w funkcjach open, k6/experimental/fs.open oraz k6/net/grpc.Client#load.
  • Zamiana przestarzałych przykładów na nowsze (#4517)
  • Przykładowe testy i dane od teraz wskazują na quickpizza.grafana.com zamiast starszych lokalizacji.

Poprawki błędów:

  • Naprawa potencjalnych wyścigów danych w API przeglądarki
  • (#4536, #4534, #4533, #4531, #4530, #4528, #4523, #4522, #4521)
  • Wyeliminowano sytuacje, w których mogło dochodzić do konfliktów podczas równoczesnego użycia API przeglądarkowego.
  • Naprawa NPD (null pointer dereference) przy kliknięciu w sytuacji dużego obciążenia (#4174)
  • Usunięcie wycieku pamięci przy obsłudze zdarzeń między komponentami (#4192)
  • Naprawa błędu z obsługą uchwytów – brak przedwczesnego usuwania oryginału (#4280)
  • Czyszczenie pozostałości po pobranych plikach z testów przeglądarkowych (#4288)
  • Poprawa działania flagi --local-execution przez izolację URL-ów archiwum (#4532)

Utrzymanie i poprawki wewnętrzne:

  • Przeniesienie eksperymentalnego kodu WebSocket do głównego repozytorium k6 (#4131)
  • Scalenie rozszerzenia xk6-webcrypto z kodem k6 (#4188, #4190)
  • Usunięcie folderu packaging z modułu przeglądarkowego (#4187) – zbędny po integracji z core.
  • Usunięcie BaseEventEmitter z komponentów, które z nim nie współpracują (#4191)
  • Uproszczenie testów eksperymentalnych streamów przy użyciu modulestest (#4189)
  • Aktualizacja zależności w serwerze gRPC (#4173)
  • Aktualizacja k6-taskqueue-lib do wersji v0.1.3 (#4213)
  • Poprawki workflow dla k6packager – budowanie obrazów do wydań (#4143)
  • Więcej zależności śledzonych przez Dependabot (#4201)
  • Dependabot uruchamiany teraz co tydzień zamiast codziennie (#4271)
  • Naprawa testów przeglądarki na systemie Windows (#4184)
  • Poprawa testów gRPC po aktualizacji certyfikatów testowych w Go (#4212)
  • Naprawa działania modułu przeglądarkowego z VU ponownie użytymi poza scenariuszami browserowymi (#4275)
  • REST API pozostaje aktywne podczas flushowania outputów (#4276)
  • Zwiększono czas oczekiwania w TestStreamLogsToLogger, by zmniejszyć niestabilność testu (#4294)

Ciekawe artykuły

Kilka ciekawych wpisów dla fanów k6, duża część opiera się o materiały innych Championów K6.

  1. K6 benchmark observations
  2. K6 for Performance Test
  3. 3 simple steps to build load test based on real life scenarios using k6
  4. Improved k6 Load Test Script with Custom Metrics, Tags, and Labels
  5. Load and stress testing with k6
  6. Load Testing a Non-API Laravel Web Application with Sanctum Session-Based Authentication Using K6
  7. Monitor these Kubernetes signals to help rightsize your fleet

Propozycja pluginów do zapoznania

Ponadto chciałem Wam przedstawić kilka ciekawych pluginów do weryfikacji.

  1. k6-studio
  2. k6-extension-registry-wayback
  3. k6x
  4. k6-DefinitelyTyped
  5. xk6-browser
  6. k6registry
  7. xk6-faker

YouTube K6

Zachęcam też Was do zapoznania się z oficjalnym kanałem Grafana K6 na YT, gdzie możecie śledzić newsy, czy rozwiązania z wykorzystaniem K6. Od siebie mogę polecić kilka pozycji jak:

Chcesz mocniej poznać K6?

Masz ochotę spojrzeć na wszystkie projekty zbudowane przez team K6 i Grafana Labs? Wpadaj na Githuba.

Pluginy do przeglądarek

K6 posiada również pluginy do przeglądarek pozwalające nagrywać i generować skrypty dla K6. Pamiętaj aby korzystać z tego rozsądnie i weryfikować wygenerowany kod.

Skorzystaj z rozwiązania cloudowego

W marcu ogłosiliśmy ogólną dostępność Grafana Cloud k6 i naszego rozwiązania do zarządzania wydajnością w Grafana Cloud . Jeśli chcesz to wypróbować, to Grafana Cloud ma bezpłatny plan na zawsze z 500 wirtualnymi godzinami użytkowania miesięcznie i więcej. Zarejestruj się już teraz.

Szkolenie z K6 dla Twojej firmy?

Napisz na szkolenia@dlatesterow.pl i skorzystaj z wiedzy Championa K6 aby wdrożyć automatyzację testów wydajnościowych w swojej organizacji.

1 dniowe szkolenie – dedykowane Waszej aplikacji, aby uczestnicy mogli pracować na realnych przykładach.

2 dniowe szkolenia – będzie poszerzone o wiele aspektów dla osób chcących zgłębić tematykę. 

Oczywiście możemy pracować z materiałami z jakimi pracuje na co dzień.
To nie jest szkolenie jakich na rynku jest wiele – nieaktualizowane informacje, wersje czy standardy, oraz przykłady na randomowych stronach. Tylko dlaTesterów.PL prowadzi szkolenia dedykowane organizacji i dodatkowo w cenach wysoko-konkurencyjnych.

Zapoznaj się z naszą platformą szkoleniową z bogatą ofertą. 

Podsumowanie

K6 News 2025 cz. 2 – to kolejny wpis mający zachęcić Was do instalacji i sprawdzenia narzędzia. Z racji popularyzacji narzędzia i dużego wsparcia które otrzymał K6 na rozwój, będziemy poszerzać wpisy na ten temat. Wszelkie artykuły związane z k6 znajdziecie w dedykowanym dziale.