Rafał Krząpa

Cypress IO – automatyzacja testów E2E z użyciem javascript

Cypress IO - wprowadzenie.

Cypress to javascriptowy framework do przeprowadzania testów E2E. Zgodnie z informacjami zawartymi na stronie - tworzenie, konfigurowanie, debugowanie i uruchamianie testów jest proste.

Instalacja

Są dwie metody instalacji Cypressa.
Pierwsza poprzez użycie npma, drugi zaś poprzez pobranie i rozpakowanie.

nmp

Przejdź do swojego projektu i zainstaluj cypressa poprzez polecenie:

 npm install cypress --save-dev

Po instalacji w folderze projektu pojawi się katalog o nazwienode_modules oraz plik package-lock.json.

Uruchomienie Cypressa jest niezwykle proste, gdyż wystarczy wpisać komendę:  node_modules\\.bin\cypress open.

Jeżeli chcesz, poniżej oficjalny tutorial ze strony cypress.io

plik zip

Możesz pobrać plik spakowany w formacie zipa np. tutaj pobierz i wypakować w dowolnym miejscu by przetestować - zapoznać się z narzędziem.

Struktura

Wewnątrz możemy ujrzeć 4 katalogi zawierające pliki które w swoim zamyśle są skatalogowane by łatwiej było się poruszać po stwarzanym projekcie:

  • Fixtures – w tym katalogu znajdują się pliki które zawierają statyczne dane, które mogą być użyte podczas testów. Jeżeli chcemy z nich skorzystać, odwołujemy się do nich poprzez polecenie cy.fixture().
  • Test files – pliki testów są domyślnie umiejscowione w folderze integration. Cypress generuje folder examples z przykładami użycia, które można odpalić w runnerze i zobaczyć jak to wygląda na przeglądarce (o tym później).
  • Plugin files – umożliwiają korzystanie, modyfikowanie, rozszerzanie funkcji. Domyślnie Cypress używa pluginów zawartych w katalogu plugins w pliku index.js. Jeżeli jesteś zainteresowany cypress oferuje na swojej stronie  masę pluginów które są tworzone przez społeczność cypressa.
  • Support files – tutaj można wrzucać funkcje, niestandardowe polecenia itp które mają być dostępne dla wszystkich plików testowych.

Test Runner

Miejsce do uruchamiania testów, jest tutaj wykaz wszystkich plików z danego miejsca w katalogu.
Możemy oczywiście wskazać żądane miejsce docelowe, by zmniejszyć ilość testów, lub też użyć zakładki Search by wyszukać konkretny scenariusz.

Wspierane przeglądarki to Canary, Chrome, Chromium, Electron. Jak widać brak jest pozostałej grupy przeglądarek Firefox, Safari, Edge czy IE 11.

Runner posiada trzy zakładki:
– Tests – lista testów do wykonania, użytkownik może sobie konfigurować które testy mają zostać przeprowadzone.
– Runs – sekcja która jest używana po podpięciu Cypress Dashboard. W tej sekcji będą widoczne testy które zostały nagrane.
– Settings – w tej zakładce  jest konfiguracja używana podczas testów, którą możemy oczywiście modyfikować za pomocą pliku cypress.json.

image

Jeżeli chcesz, poniżej oficjalne video ze strony cypress.io

Writing your first test with Cypress from Cypress.io on Vimeo.

W kolejnych wpisach pojawią się:

  • przykładowe testy;
  • napotkane w praktyce problemy;
  • szerszy tutorial - odnośniki do cypress.io;

 

 

Loading

Call Now Button