👨‍🏫 Porady

Currents.dev - platforma do monitorowania testów z Playwright

Language
date
Mar 18, 2024
slug
currents-with-playwright
author
status
Public
tags
Playwright
Automatyzacja
Porady
Narzędzia
summary
Co oferuje i czy warto skorzystać z Currents?
type
Post
thumbnail
playwright-currents.jpg
updatedAt
Apr 8, 2024 10:54 AM
category
👨‍🏫 Porady
Korzystając z Playwright w komercyjnych projektach szybko odkrywamy, że raportowanie posiada szereg ograniczeń. Pojawia się potrzeba narzędzia, które pozwoliłoby na skuteczne monitorowanie wyników testów i stanu aplikacji. Dzisiaj przybliżę Ci jedno z rozwiązań, które może zmienić twoje spojrzenie na to, jak analizować i usprawniać testy w Playwright.

Narzędzie Currents

 
Najczęściej z potrzebą optymalizacji i analizy historii uruchomień testów spotykamy się w komercyjnych projektach. Tam też wymagania co do stabilności testów i optymalizacji są na tyle duże, że warto wykorzystać komercyjne (płatnego) narzędzia. Jednym z takich płatnych rozwiązań jest serwis 🔗https://currents.dev/. Postanowiłem mu się bliżej przyjrzeć oraz podzielić się z Tobą moimi spostrzeżeniami.
 
💡
Nawiązałem współpracę z twórcami Currents, dzięki temu mogłem dokładnie poznać jego wady i zalety, oraz zrozumieć ideę stojącą za jego stworzeniem. Wynikiem tej współpracy jest ten post i zabezpieczenie jakości kodu, dostarczanego dla setek kursantów😉
 
🎁
Dzięki współpracy uzyskałem dla Was mega kod rabatowy😎 Daje on 10% zniżki w każdym planie na okres 12 miesięcy😍 A pierwsze 14 dni i tak masz w 100% za darmo, nawet bez kupowania (wymagany jest tylko email do rejestracji)🤯 Kod rabatowy: PWINFO10 Sprawdź czym jest Playwright Dashboard i jak może wspomóc Twój projekt: 🔗https://currents.dev/
Jak wykorzystać kod rabatowy? 🤔
  1. Wybierz swój aktualny plan
  1. Wybierz swój plan docelowy
  1. Naciśnij “Continue with Stripe”
    1. notion image
  1. Dodaj kod promocyjny używając opcji Add Promotion Code:
    1. notion image

Czym jest Currents?

 
Z dokumentacji 🔗https://currents.dev/readme/ możemy wyczytać:
A cloud recording service for Playwright and Cypress tests
Currents is a cloud service that helps QA and software teams debug, troubleshoot and analyze their parallel CI Playwright and Cypress CI tests.
 
Jest to chmurowe rozwiązanie, do zbierania, prezentacji i analizy wyników po testach. Na chwilę obecną (marzec 2024) integruje się z narzędziami Cypress oraz Playwright.
 

Jak zacząć pracę z Currents🤔

 
W praktyce rozpoczęcie swojej przygody z tym serwisem sprowadza się do:
  • ustawienia tokenu do utworzonego konta w konfiguracji testów (lub przy uruchamianiu testów)
 
To tyle jeśli chodzi o konfigurację.
Teraz gdy chcemy zobaczyć pierwsze wyniki na platformie wystarczy:
  • uruchomić testy (lokalnie czy na CI/CD) i wynik testów zostanie automatycznie wysłany do konta na Currents
 
Po uruchomieniu testów na naszym koncie otrzymujemy wyniki po testach (wraz ze screenshotami, video, logami etc) oraz analizy wyników (liczba błędów, średnie czasy wykonania, procent flaky testów, zmiany w wydajności etc.):
 
notion image
 

Ile to kosztuje?

 
Currents oferuje darmowy plan, który pozwala na korzystanie z platformy przez 14 dni bez opłat (w 100% za darmo, wystarczy tylko podać email). W tym czasie mamy dostęp do wszystkich funkcji i możemy dowolnie testować możliwości tego narzędzia.
 
Koszt minimalnego planu po zakończonym bezpłatnym okresie to obecnie 37 USD miesięcznie (przy rocznej subskrypcji, a dokładny i aktualny cennik znajdziesz tutaj: 🔗https://currents.dev/#pricing ).
 
🎁
Możesz też skorzystać z naszego kodu rabatowego, który daje 10% zniżki w każdym planie na okres 12 miesięcy. Wtedy cena to ok. 33 USD. Kod rabatowy: PWINFO10
 
Czy to dużo?
Jakie funkcje dostajemy w zamian?
Kiedy minimalny plan wystarczy?
 
Od tego zaczęliśmy nasze testy…😎
 
📢
Cena planu dostępowego zależy od liczby wyników po testach. Darmowe konto oferuje 14 dni dostępu, 10 000 wyników testów na miesiąc oraz 10 członków zespołu/projektu. Czym jest 10 000 wyników testów? Jest to po prostu jednostkowy wynik po teście. Limit 10 000 oznacza, że możesz przechowywać wyniki z np: - 1 testu puszczonego 10000 razy, - 100 testów puszczonych 100 razy, - 1000 testów puszczonych 10 razy, etc.
 
🤔
Czy 10 000 wyników po testach miesięcznie to dużo czy mało? To zależy od potrzeb projektu, liczby testów i ich częstotliwości uruchamiania😉 Polecam policzyć w przybliżeniu ile wyników po testach generujesz w swoim projekcie co miesiąc. Przykładowo: - liczba testów automatycznych w projekcie: 100 - testy uruchamiane są 4 razy dzienne - testy uruchamiane są we wszystkie dni robocze w miesiącu, a to wychodzi: 21 dni Po prostych obliczeniach otrzymujemy 8400 wyników miesięcznie. W tym przypadku możemy się zmieścić w minimalnym płatnym planie. Jednak w powyższych obliczeniach należałoby uwzględnić: - dodatkowe uruchamianie testów (po deployu, w czasie regresji etc.) - implementację nowych testów - testowanie infrastruktury i konfiguracji
 
💡
TIP: Jeśli zbliżycie się do limitu i chcecie np. wskoczyć na wyższy plan, to śmiało kontaktujcie się z zespołem Currents😉 Z doświadczenia mogę powiedzieć, że reagują błyskawicznie😉
 

Nasze pierwsze testy

 
Przed rozpoczęciem korzystania z Currents przygotowaliśmy projekt, aby zobaczyć jakie funkcje oferuje platforma.
 

Metodologia

 
Co przygotowaliśmy do naszych testów?
  • darmowe konto na platformie 🔗https://currents.dev/
    • domyślnie darmowe konto oferuje:
      • 14 dni
      • 10000 wyników testów na miesiąc oraz
      • 10 członków zespołu/projektu
    • w ramach współpracy otrzymałem praktycznie nieograniczony dostęp do platformy, dzięki czemu mogłem sprawdzić różne scenariusze
  • specjalnie przygotowany zestaw testów napisanych w Playwright i TypeScript
    • część testów dotyczyło interakcji z testową stroną
    • większa część testów była prostymi testami zawierającymi pojedynczą asercję
    • w projekcie testów zaimplementowaliśmy mechanizm aby móc łatwo sterować liczbą testów, czasem ich wykonania lub prawdopodobieństwem wystąpienia błędów
 

Podpięcie testów do Currents

 
W pierwszym kroku, gdy mamy testy automatyczne, musimy je podpiąć do naszego konta. Całość jest banalnie prosta.
 
Jakie kroki musimy wykonać?
  1. Na początku na Currents tworzymy nowy projekt, do którego podepniemy nasze testy:
    1. notion image
  1. Następnie otrzymujemy proste i czytelne instrukcje jak wysłać wyniki naszych testów, aby były widoczne w projekcie (zamazaliśmy wrażliwe dane):
    1. notion image
  1. Wykonujemy kolejne kroki lokalnie - czyli instalujemy dedykowany plugin, dodajemy trace i uruchamiamy testy za pomocą wskazanego w projekcie na Currents polecenia
  1. Na konsoli otrzymujemy wynik:
    1. notion image
  1. Na stronie naszego projektu pojawia się wynik po uruchomieniu testów:
    1. notion image
 
 

Mamy podpięty projekt… i co dalej?

 
Teraz pozostaje dalej uruchamiać testy! 😁
Testy możemy uruchamiać:
  • lokalnie
  • na CI/CD
Następnie wyniki z każdych testów są wysyłane do naszego konta.
I po zebraniu wyników Currents pokazuje swoje możliwości😎
 

Wyniki, statystyki i wykresy

 
Wyniki po testach, wraz ze wszystkimi metrykami (liczba testów, czas uruchomienia, liczba flaky testów etc) jest odpowiednio agregowana i prezentowana w postaci czytelnych wykresów.
Nareszcie mamy to czego nie zobaczymy w domyślnych raportach Playwright - historię wykonań.
 
notion image
 
Mamy też mega czytelne zestawienie czasów trwania poszczególnych runów:
notion image
 
Jak i również informacje o liczbie uruchomionych testów i plików z testami (to istotna informacja ale o tym za chwilę):
 
notion image
 
 
Inną mega funkcją dla Playwright, jest wizualizacja obciążenia poszczególnych workerów.
Możemy na jej podstawie przeanalizować, czy mamy optymalnie wykonane zrównoleglenie i czy dane testy nie trwają zbyt długo.
Całość kryje się pod Run Summary, w sekcji Playwright Runners. Dodatkowo mamy wgląd w wyniki per projekty (konfigurowane w playwright.config.ts):
 
notion image
Jakie jest praktyczne wykorzystanie tych informacji? Czytaj dalej - opisujemy to w przykładach!👇
 

Raporty

 
Możemy również skonfigurować sobie raporty, które są automatycznie wysyłane na maila.
 
notion image
 
Raporty zawierają też szczegółowe informacje o zmianach w wydajności testów, flaky testach, czasie uruchomienia poszczególnych .spec i testów itp.
 
notion image
 
Również mamy wskazanie trendów. Możemy z niego wyczytać np. przy których konkretnie testach wystąpiła degradacja wydajności:
 
notion image
 
Wszystko generowane automatycznie w oparciu o dane jakie przesłaliśmy do Currents🤩
 

Aktualizacje i nowości

 
Currents jest aktywnie rozwijane i systematycznie pojawiają się różne aktualizacje, jak bugfixy czy nowe funkcjonalności.
Każde aktualizacje są widoczne w prawym górnym rogu strony - dzięki temu łatwo możemy dowiedzieć się o nowościach:
notion image
 

Jak w jaktestowac.pl korzystamy z Currents?

 
Po przejściu przez okres próbny postanowiliśmy dalej korzystać z Currents😉
 
W jaktestowac.pl obecnie wykorzystujemy Currents do rozwijania naszego 🔗Programu Testy Automatyczne z Playwright, z którego korzysta obecnie ponad 350 osób.
Dlaczego?
 
Zacznijmy od tego, co realizujemy podczas tych materiałów:
  • rozwijamy zaawansowany framework do testów front-endu i back-endu
  • podejmujemy różne decyzje architektoniczne, implementujemy je i omawiamy ich wady i zalety
  • piszemy testy automatyczne oparte o naszą autorską aplikację 🦎GAD, która oferuje wiele wyzwań podczas automatyzacji (front-end, back-end, zarządzanie danymi, różnorodne elementy do testów i wiele innych)
 
Framework rozwijamy razem z kursantami, dla których do każdej lekcji przygotowaliśmy repozytorium z kodem.
Jednocześnie cały kod testów mamy wpięty w pełen proces CI/CD jako:
  • testy nightly (uruchamiane w nocy)
  • testy uruchamiane przy mergowaniu kodu
  • testy uruchamiane on-demand (czyli manualnie)
 
Tak przygotowany setup pozwala nam zapewnić:
  • brak błędów w tworzonym frameworku podczas kursów
  • kompatybilność z cały czas rozwijaną aplikacją 🦎GAD
  • testowanie przyszłych wersji Playwright, aby szybko reagować na zmiany wprowadzane przez twórców PW i nanosić poprawki w kursie
  • wykrywanie niestabilnych testów (flaky tests), możliwość analizy i szybkiego wprowadzenia poprawek
 

Jaką rolę odgrywa tu Currents?

 
Dzięki Currents mamy:
  • 🗺️ wszystkie wyniki zebrane w jednym miejscu - oszczędzamy sporo czasu na przeglądaniu wyników
  • 🐞 przejrzyste informacje o niestabilnych testach (flaky tests) - szybko możemy dostrzec problemy i przystąpić do ich analizy i naprawy
  • 📋 raporty z tygodniowym podsumowaniem (informacje o błędach, podsumowanie wydajności etc.) - ponowie oszczędzamy czas na analizowaniu danych oraz mamy dodatkowy przegląd metryk dla różnych projektów🤩 🔗 https://currents.dev/readme/insights/automated-reports
 
Jak widzisz, podczas rozwoju naszych kursów postawiliśmy mocno na jakość naszych materiałów.
Dzięki temu nasi kursanci uczą się z lekcji, w których minimalizujemy ryzyko błędów. I co ważne - mamy system wczesnego ostrzegania przed błędami! 😉
Jednocześnie dalej testujemy platformę Currents i zgłaszamy potencjalne usprawnienia.
 

Nasze przypadki użycia

 
Poniżej przeczytasz o konkretach związanych z tym, jak używamy Currents😉
 

Przypadek 1 - optymalna liczba workerów w testach

 
W projektach wskazane jest, aby mieć szybko feedback z testów😉
Dzięki temu oszczędzamy:
  • ⌛ czas - oczekiwanie na wynik i możliwość podjęcia kolejnych akcji
  • 💸 pieniądze - koszt maszyn, na których uruchamiamy testy
 
Dlatego częstą praktyką jest zrównoleglanie testów💪 W Playwright można to zrobić w prosty sposób - za pomocą workerów (w dużym uproszczeniu - wątków, na których uruchamiamy testy).
 
Większa liczba workerów pozwala na uruchamianie większej liczby testów równolegle.
Jednak nie zawsze więcej oznacza lepiej i szybciej.
 
W pewnym momencie dochodzimy do punktu krytycznego, w którym workery zostają “zagłodzone”. Czyli dany worker nie ma już co uruchamiać w danym projekcie i musi czekać na zakończenie pozostałych zadań.
 
Dzięki Currents w prosty i przejrzysty sposób możemy zdiagnozować punkt krytyczny. Poniżej screen z uruchomienia testów na 2 workerach (po lewej) i na 4 (po prawej):
notion image
 
Wolne przestrzenie między zadaniami są niepożądane - oznaczają, że wtedy worker oczekuje na zadanie. Możemy dodatkowo zauważyć, ze czas pojedynczych testów się wydłużył - może to się wiązać ze zbyt dużym obciążeniem dla testowanej aplikacji i maszyny, na której uruchamiamy testy.
 
Jak to się przełożyło na czas trwania testów?
Testy uruchomione na 4 workerach trwały 53 sekundy, a na 2 - 52 sekundy!
Czyli czasy bardzo do siebie zbliżone.
 
Co możemy poprawić?
  • zmniejszyć liczbę workerów
  • zwiększyć granularność testów
  • zwiększyć zasoby dla maszyny, która hostuje testowaną aplikację i na której uruchamiamy testy
 

Przypadek 2 - wykrywanie flaky tests

 
Podczas rozwijania frameworka do testów automatycznych, prędzej czy później natrafimy na flaky tests.
 
Flaky test to:
test, który zapewnia różne wyniki, takie jak przekazywanie lub niepowodzenie, nawet jeśli nie ma żadnych zmian w kodzie źródłowym lub środowisku wykonywania.
 
W naszym przypadku wykryliśmy takie testy w naszym zestawie:
 
notion image
 
Możemy wejść do szczegółów danego testu, aby podejrzeć jego:
  • metryki i dane historyczne
  • szczegółowe błędy
  • trace ze wszystkimi logami i informacjami o akcjach wykonanych podczas testu
 
Takie szczegółowe dane prezentują się w następujący sposób:
 
notion image
 
Przechodząc do szczegółów tego przypadku - przy bardzo szybkich operacjach przez REST API (tworzenie, modyfikacja, usuwanie) pojawia się wyścig.
Aplikacja jest w trakcie tworzenia zasobu, a my już chcemy ten zasób usuwać.
Jeśli zasób nie jest jeszcze gotowy - to przy próbie jego usunięcia otrzymujemy 404.
 
🤔
Jak to wygląda w tym przypadku?
Flaky testy były tutaj działaniem zamierzony. Aplikacja, którą rozwijamy i testujemy, ma zamierzoną niską wydajność. Dzięki temu na prostym przykładzie możemy pokazać wyzwania podczas automatyzacji testów😉
 
Takie statystyki, metryki i raporty, które oferuje Currents, pozwalają na szybkie wykrywanie i analizę takich przypadków. A tym samym szybko możemy przejść do znalezienie rozwiązania, które może leżeć albo po stronie testów, albo po stronie aplikacji! 😉
 

Przypadek 3 - wykrywanie błędów w Playwright

 
Nasze testy uruchamiamy też na przyszłych wersjach Playwright🎭
Dzięki temu upewniamy się, że:
  • nasze testy działają poprawnie, a jeśli nie - to mamy system wczesnego ostrzegania przed brakiem kompatybilności i mamy czas na wdrożenie poprawek😉
  • Playwright nie posiada błędów - czyli zabieramy trochę pracy od Twórców Playwright😁
 
I teraz przejdźmy do konkretów 😉
Stabilną wersją Playwright była wersja v1.41.2, a my w jednym z projektów uruchamialiśmy nasze testy na wersji 1.42.0-alpha-2024-02-09
Dzięki temu zauważyliśmy niepokojące błędy:
 
notion image
 
Oznacza to, że odpowiedzi nie posiadają body🤔
W tym konkretnym teście próbujemy pobrać body z odpowiedzi, która jest przekierowaniem.
 
Po szybkiej analizie zdecydowaliśmy się zgłosić to zachowanie jako błąd do Playwright:
 
Reakcja zespołu Playwright była ekspresowa🔥
Zgłoszenie zostało faktycznie zaklasyfikowane jako błąd🐞
Poprawka zostanie wdrożona w wersji 1.42 😉
 
notion image
 
Dzięki temu pomogliśmy w zapewnieniu jakości narzędzia, które jest używane przez miliony osób na całym świecie😉
 
notion image
 

Statystyki w służbie aplikacji

 
Kolejną z zalet tego typu dashboardów jest możliwość monitorowania czasu wykonania i potencjalnej degradacji testów end to end.
 
notion image
Tego typu testy odwzorowują scenariusze, które symulują ścieżkę interakcji potencjalnego użytkownika serwisu. Mając zautomatyzowany taki scenariusz, jesteśmy w stanie zbadać szybkość testu. Co za tym idzie, jesteśmy w stanie monitorować jego wykonanie w kolejnych wydaniach aplikacji.
 
Tego typu informacje mogą okazać się kluczowe, gdyż możemy odkryć np. spowolnienie w obszarach danych scenariuszy związanych ze zmniejszoną wydajnością. Oczywiście tematy performance to dużo szersze zagadnienie. Jednak możemy zacząć od monitoringu krytycznych dla aplikacji funkcji i ścieżek użytkownika. Dzięki temu jesteśmy w stanie wcześnie wyłapać pierwsze objawy związane z trendem np. coraz wolniejszego wykonania testu.
 
notion image
 

Mocne i słabe strony

 
Każde narzędzie ma swoje mocne i słabe strony.
Zatem przyjrzyjmy się, ja to jest obecnie z Currents🤔
 

Zalety

 
✅ Mnogość opcji i statystyk
  • Platforma oferuje całą masę automatycznie generowanych statystyk i metryk.
✅ Możliwość skonfigurowania wielu projektów
  • Możemy przygotować sobie wiele projektów, które będą obejmowały:
    • pojedyncze zestawy testów (test suits)
    • całkowicie osobne projekty
    • testy na różnych wersjach aplikacji lub bibliotek
    • i dowolne inne kombinacje😉
✅ Zbiorcze raporty o stanie testów wysyłane na maila
  • Możemy skonfigurować zbiorcze raporty wysyłane raz w tygodniu na maila. Mamy w nich informacje o stanie naszych testów: liczba uruchomionych testów, czasie wykonywania, zmianach w wydajności, różnych trendach etc.
✅ Łatwość konfiguracji
  • Od założenia konta, do prezentacji pierwszych wyników potrzebujesz 2-3 minut. Cała konfiguracja jest przejrzyście opisana wraz z przykładami. Dodatkowo istnieją 2 sposoby na podpięcie naszych testów do Currents - możemy wybrać, który nam bardziej odpowiada.
✅ Dobra dokumentacja
  • Dokumentacja do platformy jest mega szczegółowa. Zawiera wiele przykładów i dokładnie wyjaśnione mechanizmy działania. Również co jest super - w różnych miejscach w serwisie (przy wykresach, statystykach, rożnych opcjach) znajduje się odnośnik do dokumentacji:
notion image
✅ Kontakt z twórcami i zespołem
  • Zespół jest mega responsywny🤩 Nasze pytania lub zgłoszone przez nas kwestie były rozwiązywane ekspresowo. Niektóre tematy nawet w ciągu kilku minut zostały ogarnięte!
 

Kwestie indywidualne

 
🤔 Koszty
  • Currents jest narzędziem płatnym, co może być minusem, gdy szukamy oszczędności w budżecie. Jednak warto tu pamiętać, że w zamian otrzymujemy korzyści często niedostępne w darmowych projektach open-source. Currents jest produktem cały czas rozwijanym, mamy szybki support i kontakt z Twórcami 😉
🤔 UX
  • Currents (jak każda aplikacja) ma swoją filozofię prezentacji wyników. W zależności od preferencji mogą być dla Ciebie mniej lub bardziej czytelne😉
 

Ograniczenia

 
Obecnie (stan na 02.2024)
❌ Tylko Cypress i Playwright
❌ Tylko JavaScript/TypeScript
 
Obecnie Currents wspiera tylko frameworki Cypress oraz Playwright oraz języki JavaScript oraz TypeScript. Języki są szczególnie ważne w kontekście Playwright, który jest dostępny również dla Pythona, C# czy Javy.
Jednak w przyszłości wsparcia dla innych narzędzi nie jest wykluczone. Tutaj w razie potrzeby polecamy skontaktować się z twórcami bezpośrednio, aby przedstawić im swoje potrzeby 😉
 

Alternatywy

 
🔗https://allurereport.org jest to narzędzie do generowania raportów, a nie ich bezpiecznego przechowywania, scalania i udostępniania. O to już musimy zadbać sami.
 
✅ Z plusów warto wymienić:
  • darmowe
  • ustabilizowana pozycja na rynku
  • wsparcie dla Playwright poprzez plugin
 
❌ Wady to:
  • potrzeba samodzielnego hostowania raportów
  • konfiguracja związana z prezentacją historii testów
  • dość skomplikowana konfiguracja
  • brak szczegółowych analiz jak na Currents (np. workery, flaky tests, zbiorcze raporty wysyłane na maila)
 
🔗https://reportportal.io jest bardzo rozbudowanym narzędziem do zbierania raportów i analizowania danych. Posiada zarówno opcję płatną (SaaS), jak i darmową, w którym sami musimy zadbać o konfiguracje i działanie rozwiązania.
✅ Z plusów warto wymienić:
  • darmowa (własny hosting) lub płatna opcja (SaaS)
  • wsparcie dla Playwright (i wielu innych narzędzi)
  • bardzo bogate opcje prezentacji i filtrowania wyników
  • support (w płatnej opcji)
 
❌ Wady to:
  • darmowa opcja to wymóg samodzielnego hostowania zebranych danych - czyli zapewnienia odpowiedniej konfiguracji, przestrzeni, dostępności i bezpieczeństwa
  • płatna opcja jest bardzo droga (obecnie to 569 USD na miesiąc)
  • dość skomplikowana konfiguracja
  • brak szczegółowych bardzo szczegółowych analiz dla Playwright jak na Currents (obciążenie workerów etc).
 

Podsumowanie

 
Reasumując, uważamy, że zdecydowanie warto zapoznać się z 🔗https://currents.dev w kontekście poszukiwań wydajnego narzędzia do agregacji wyników testów w Playwright i Cypress.
 
Nie jesteś pewien czy warto wykupić dostęp?
 
W tym przypadku polecamy:
  • Załóż darmowe konto i testuj Currents przez 14 dni za darmo (i to w 100% za darmo, bez podawania informacji o karcie, adresów etc - wystarczy tylko email).
  • Sprawdź integrację ze swoimi narzędziami i prezentacje wyników
  • Zapoznaj się ze statystykami i metrykami, jakie oferuje Currents
 
Może się okazać, że właśnie jest to coś, czego potrzebuje Twój projekt 😉
 
🧠
Przy inwestowaniu w dowolne narzędzie przetestuj darmową wersję! Sprawdź czy: 👉 spełnia oczekiwania projektu 👉 pomaga zrealizować podstawowe, jak i te bardziej skomplikowane cele i scenariusze 👉 projekt może pozwolić sobie na taki wydatek 👉 zyski przewyższają koszty 👉 darmowa wersja nie jest wystarczająca Polecamy też nawiązać kontakt z twórcami. Często można nawiązać indywidualną współpracę lub otrzymać dedykowaną ofertę😉
 

Bonus: Security i bezpieczeństwo danych

 
Podczas wdrażania nowego narzędzia, warto też rozważyć bezpieczeństwo.
Również twórcy Currents pamiętali o tym aspekcie i wprowadzili stosowne zabezpieczenia.
Więcej o bezpieczeństwie poczytasz na dedykowanej stronie:
Również w razie pytań możesz śmiało pisać do twórców na czacie (dostępnym na stronie w prawym dolnym rogu).
 

Linki i materiały dodatkowe

🎁
Dzięki współpracy uzyskałem dla Was mega kod rabatowy😎 Daje on 10% zniżki w każdym planie na okres 12 miesięcy😍 A pierwsze 14 dni i tak masz w 100% za darmo, nawet bez kupowania (wymagany jest tylko email do rejestracji)🤯 Kod rabatowy: PWINFO10
Sprawdź czym jest Playwright Dashboard i jak może wspomóc Twój projekt: 🔗https://currents.dev/
Jak wykorzystać kod rabatowy? 🤔
  1. Wybierz swój aktualny plan
  1. Wybierz swój plan docelowy
  1. Naciśnij “Continue with Stripe”
    1. notion image
  1. Dodaj kod promocyjny używając opcji Add Promotion Code:
    1. notion image