Jak pobrać i zainstalować CUCUMBER w Windows

⚡ Inteligentne podsumowanie

Cucumber instalacja włączona Windows potrzebuje czterech części w kolejności: Ruby z zestawem deweloperskim, Cucumber Sam gem, edytor taki jak RubyMine i biblioteka sterowników przeglądarki. Instalacja każdego z nich zajmuje kilka minut.

  • 🔘 Najpierw Ruby: Cucumber jest klejnotem Ruby, więc instalator Ruby+Devkit z RubyInstaller musi być zainstalowany przed wykonaniem jakichkolwiek innych czynności.
  • Jedno polecenie: Polecenie gem install cucumber pobiera gem i jego zależności bezpośrednio z RubyGems z wiersza poleceń.
  • Sprawdź natychmiast: Uruchomienie polecenia cucumber –version potwierdza, że ​​problem został rozwiązany i że plik wykonywalny znajduje się w ścieżce systemowej PATH.
  • 🧪 Edytor opcjonalny: RubyMine umożliwia podświetlanie składni i nawigację krok po kroku, ale każdy edytor, który zapisuje zwykły tekst, uruchomi plik funkcji.
  • 🛠️. Sterownik przeglądarki: Watir okłady Selenium i steruje przeglądarką; współczesna nazwa to watir, nie wycofana z użytku wersja watir-webdriver.
  • 📊 Stały układ: Pliki funkcji znajdują się w folderze features, definicje kroków w folderze features/step_definitions lub Cucumber nie można dopasować kroku.

Pobierz i zainstaluj Cucumber on Windows z Ruby, RubyMine i Watir

Cucumber Instalacja może wydawać się żmudna, ale jest stosunkowo łatwa, gdy elementy zostaną ułożone w odpowiedniej kolejności. Oto plan działania dotyczący komponentów, które należy zainstalować, aby… Cucumber praca.

Wymagania wstępne dotyczące instalacji Cucumber on Windows

Cucumber jest dystrybuowany jako klejnot Ruby, więc nic nie działa, dopóki Ruby nie będzie obecny. Przed pobraniem sprawdź poniższe:

  • Windows 10 lub nowszy, 64-bitowy. RubyInstaller nie zaleca już kompilacji 32-bitowej, chyba że potrzebujesz 32-bitowych natywnych bibliotek DLL lub obiektów COM.
  • Uprawnienia administratora. Instalator zapisuje dane w Program Files i edytuje zmienną środowiskową PATH.
  • Połączenie internetowe. Oba poniższe polecenia gem install pobierają pakiety z RubyGems.
  • Około 1 GB wolnego miejsca na dysku dla Ruby, a także zestaw narzędzi deweloperskich MSYS2 i jeszcze więcej, jeśli dodasz RubyMine.
  • Przeglądarka do automatyzacji. Watir obsługuje Chrome, Edge lub Firefox przez Selenium, więc co najmniej jeden musi być zainstalowany.

Warto zapamiętać na później dwa polecenia: ruby -v drukuje wersję Ruby i klejnot -v Wyświetla wersję RubyGems. Jeśli którakolwiek z tych opcji się nie powiedzie, ścieżka PATH nie została zaktualizowana i instalator powinien zostać uruchomiony ponownie, a nie debugowany.

Zainstaluj Ruby i DevKit

Zacznij od pakietu Ruby+Devkit, który zawiera zestaw narzędzi kompilatora potrzebny bibliotekom gem z rozszerzeniami C.

Krok 1) Przejdź do https://rubyinstaller.org/downloads/ i wybierz instalator. Strona pobierania znajduje się poniżej.

Strona pobierania RubyInstaller zawierająca listę instalatorów Ruby i Ruby+Devkit

⚠️ Uwaga dotycząca wersji: oddzielne archiwum DevKit, do którego odnosi się oryginalny przewodnik, zostało zastąpione przez zestaw narzędzi MSYS2, który Ruby+zestaw deweloperski Pakiety instalatora są dostępne jako komponenty do wyboru. RubyInstaller obecnie zaleca nowym użytkownikom kompilację Ruby+Devkit 4.0.X (x64), a zestaw będzie później aktualizowany o usuń instalację zamiast ponownego uruchamiania pliku dk.rb. Poniższe kroki pozostają bez zmian.

Krok 2) Otwórz pobrany plik. Na pierwszym ekranie:

  1. Zaakceptuj licencję
  2. Kliknij przycisk Dalej

Ekran umowy licencyjnej instalatora Ruby z przyciskiem Dalej

Krok 3) Na następnym ekranie:

  1. Wybierz katalog instalacyjny
  2. Zaznacz wszystkie opcje
  3. Kliknij przycisk Zainstaluj

Wybór katalogu instalacyjnego Ruby i wybranie wszystkich opcji instalatora

Krok 4) Na następnym ekranie kliknij Dalej.

Ekran wyboru komponentów instalatora Ruby przed rozpoczęciem kopiowania

Krok 5) Poczekaj na zakończenie instalacji.

Postęp instalacji Ruby podczas kopiowania plików na dysk

Krok 6) Kliknij Zakończ.

Ostateczny ekran instalatora Ruby z przyciskiem Zakończ

Krok 7) Po zakończeniu instalacji uruchom Ruby z Windows Menu Start.

Windows Wpis w menu Start otwierający wiersz poleceń w języku Ruby

Krok 8) Zobaczysz wiersz poleceń Ruby podobny do Windows okno cmd.

Okno wiersza poleceń Ruby gotowe na akceptację poleceń gem

Zainstalować Cucumber

W przypadku Ruby w PATH sam klejnot jest pojedynczym poleceniem.

Krok 1) Wpisz klejnot instaluj ogórek w wierszu poleceń Ruby. To polecenie pobiera i instaluje Cucumber bezpośrednio w wierszu poleceń.

polecenie gem install cucumber wpisane w wierszu poleceń Ruby

Po kilku sekundach Cucumber rozpoczyna się procedura instalacyjna, która raportuje każdą pobraną zależność.

Cucumber wyjście instalacji gem z listą instalowanych zależności

Krok 2) Aby sprawdzić, czy Cucumber zainstalowano pomyślnie, wpisz ogórek – wersja. Zwróć uwagę na dwa myślniki — pojedyncza myślnik nie jest prawidłową opcją długą.

polecenie cucumber --version drukujące zainstalowane Cucumber wersja

Zainstaluj IDE RubyMine

Edytor nie jest wymagany, ale RubyMine rozumie Gherkina i potrafi przejść od kroku do jego definicji. Wykonaj poniższe kroki, aby go zainstalować.

Ekran powitalny kreatora konfiguracji RubyMine

Krok 1) Kliknij Dalej, aby kontynuować instalację RubyMine.

Pierwsza strona instalatora RubyMine z przyciskiem Dalej

Krok 2) Wybierz miejsce instalacji.

Wybieranie folderu instalacyjnego RubyMine

Krok 3) Ustaw opcje instalacji.

Opcje instalacji RubyMine, takie jak skróty i skojarzenia plików

Krok 4) Wybierz folder menu Start.

Wybór folderu menu Start dla skrótu RubyMine

Krok 5) Kliknij Zainstaluj.

Instalator RubyMine gotowy do kopiowania plików po kliknięciu Instaluj

Krok 6) Kliknij Zakończ.

Ekran ukończonej konfiguracji RubyMine z przyciskiem Zakończ

Krok 7) Wybierz Nie importuj ustawień.

Okno dialogowe importu ustawień przy pierwszym uruchomieniu RubyMine

Krok 8) Kliknij Oceń.

Okno aktywacji licencji RubyMine z opcją Evaluate

Krok 9) Zaakceptuj licencję.

Akceptacja umowy licencyjnej RubyMine

Krok 10) Wybierz opcję Pomiń pozostałe i Ustaw wartości domyślne.

Początkowy ekran personalizacji RubyMine z opcją pomijania pozostałych i ustawiania wartości domyślnych

Krok 11) Otwórz edytor.

Ekran powitalny RubyMine z opcją Otwórz

Krok 12) Utwórz nowy projekt.

Nowy dialog projektu w RubyMine

⚠️ Uwaga dotycząca wersji: RubyMine jest płatny JetBrains produkt z ograniczoną czasowo oceną, którą uruchamia przycisk „Oceń” w kroku 8. Bezpłatną alternatywą jest Visual Studio Code z Rubinem i Cucumber rozszerzenie (Gherkin); reszta tego przewodnika działa w ten sam sposób w obu edytorach.

Zainstaluj watir-webdriver

Cucumber uruchamia tylko kroki. Coś innego musi otworzyć przeglądarkę, a to zadanie należy do Watir, opakowanie Ruby SeleniumJeśli wolisz sterować przeglądarką bezpośrednio, ten sam projekt może wywołać zwykły Skrypt WebDriver.

Krok 1) Kliknij Uruchom wiersz poleceń za pomocą Ruby i uruchom polecenie instalacyjne gem install watir-webdriver.

gem install watir-webdriver uruchomiony w wierszu poleceń Ruby

Krok 2) Instalacja modułu watir-webdriver przebiegła pomyślnie.

Wyjście konsoli potwierdzające zainstalowanie modułu watir-webdriver

⚠️ Uwaga dotycząca wycofania: klejnot watir-webdriver został złożony w głównym pliku czekać klejnot w Watir 6.0 i jego własne repozytorium teraz wskazują użytkownikom tylko zamiennik. Na nowym komputerze uruchom gem install watir Zamiast tego zachowano powyższe polecenie historyczne, ponieważ jest ono widoczne na zrzutach ekranu.

Cucumber Struktura folderów projektu

Cucumber Odkrywa pliki według konwencji, a nie konfiguracji, więc układ ma większe znaczenie, niż mogłoby się wydawać na pierwszy rzut oka. Minimalny projekt wygląda tak:

ścieżka Mieści
cechy/ Każdy plik .feature napisany w Gherkinie. Cucumber wyszukuje tutaj domyślnie.
funkcje/definicje_kroków/ Pliki Ruby, których bloki pasują do każdej linii Given, When i Then.
funkcje/wsparcie/ Kod konfiguracji jest ładowany przed wykonaniem dowolnego kroku, np. env.rb, w którym zwykle otwiera się i zamyka przeglądarkę.

Dwie zasady pozwalają uniknąć wielu nieporozumień w przyszłości. Cucumber ignoruje słowo kluczowe, gdy pasuje do kroku, więc Biorąc pod uwagę, że mam zmienną a oraz Następnie mam zmienną a kolidują z tą samą definicją. Tekst kroku w pliku funkcji musi dokładnie odpowiadać wyrażeniu regularnemu w pliku kroku, łącznie z interpunkcją.

Imię Cucumber Scenariusz

Poniższy przykład mnoży dwie liczby, co wystarcza, aby udowodnić, że plik funkcji, plik kroków i klejnot komunikują się ze sobą.

Krok 1) Otwórz edytor RubyMine z Windows Menu Start.

Otwieranie RubyMine z Windows menu start

Panel RubyMine wygląda tak, jak pokazano poniżej.

Panel RubyMine wyświetlany po otwarciu edytora

Krok 2) Utwórz nowy projekt w edytorze RubyMine.

Rozpoczęcie nowego projektu z pulpitu nawigacyjnego RubyMine

Podaj nazwę i lokalizację projektu, a następnie potwierdź.

Wprowadzanie nazwy i lokalizacji projektu w oknie dialogowym nowego projektu

Krok 3) Utwórz katalog plików.

Tworzenie nowego katalogu w projekcie RubyMine

Nowy katalog pojawi się w drzewie projektu.

Drzewo projektu pokazujące nowo utworzony katalog funkcji

Krok 4) Utwórz i zapisz plik w twójfolder/funkcje/ z nazwą twojanazwapliku.funkcja.

Tworzenie pliku funkcji w katalogu funkcji

Sprawdź, czy nazwa pliku kończy się rozszerzeniem .feature.

Nadanie nowemu plikowi nazwy z rozszerzeniem .feature

Krok 5) Aby zrealizować nasz scenariusz, zapisz następujące polecenia w pliku funkcji.

Plik funkcji otwarty w edytorze RubyMine gotowy na scenariusz

Code:

Feature: Multiplication 
I multiply two numbers 
	Scenario: multiply a and b 
		Given I have variable a 
		And I have variable b 
		When I multiplication a and b 
		Then I display the Result

Krok 6) Teraz uruchom pierwszy plik funkcji.

Kliknij na Uruchom wiersz poleceń za pomocą Ruby i uruchom polecenie Cucumber z folderu projektu.

Uruchomienie wiersza poleceń Ruby w celu uruchomienia pliku funkcji

Konsola wyświetla wynik w sposób pokazany poniżej.

Wyjście konsoli z pierwszego Cucumber uruchomienie pliku funkcji

Krok 7) Utwórz plik definicji kroku dla pliku funkcji.

Utwórz nowy folder w edytorze RubyMine.

Tworzenie nowego folderu w projekcie RubyMine dla definicji kroków

Nadawanie nazwy nowemu folderowi definicji kroków

Krok 8) Zapisz plik w twójfolder/funkcje/definicje_kroków z nazwą krok_testowy.rb.

Zapisywanie nowego pliku Ruby w folderze definicji kroków

Wprowadzanie nazwy pliku definicji kroku „test_step.rb”

Krok 9) Zapisz poniższy kod w pliku kroków.

Plik definicji kroku otwarty w edytorze przed dodaniem kodu

Code:

Given(/^I have variable a$/) do
@a = 50
end

And(/^I have variable b$/) do
@b = 70
end

When(/^I multiplication a and b$/) do 
@mul = @a * @b
end

Then(/^I display the Result$/) do 
puts "Multiplication of #{@a} and #{@b} is #{@mul}"
end

Krok 10) Teraz uruchom ponownie plik funkcji.

Uruchomienie pliku funkcji po raz drugi po zdefiniowaniu kroków

Wynik jest wyświetlany na konsoli, a każdy krok jest oznaczany jako zaliczony.

Cucumber wyjście konsoli po uruchomieniu pliku funkcji ze zdefiniowanymi krokami

wspólny Cucumber Błędy instalacji i jak je naprawić

Większość awarii na tym etapie wynika raczej ze środowiska niż z Cucumber. To te, które warto rozpoznać na pierwszy rzut oka.

Treść wiadomości Spowodować Fix
„ogórek” nie jest rozpoznawany jako polecenie wewnętrzne lub zewnętrzne Katalog bin Ruby nie znajduje się w zmiennej środowiskowej PATH lub znajdujesz się w zwykłym oknie poleceń. Otwarte Uruchom wiersz poleceń za pomocą Rubylub zainstaluj ponownie Ruby z wybraną opcją PATH.
SSL_connect zwróciło=1 errno=0 state=błąd: weryfikacja certyfikatu nie powiodła się RubyGems nie jest w stanie zweryfikować łańcucha certyfikatów, zwykle korzystając z korporacyjnego serwera proxy. Zaktualizuj RubyGems za pomocą polecenia gem update –system lub skonfiguruj serwer proxy za pomocą przełącznika –http-proxy.
BŁĄD: Nie udało się zbudować natywnego rozszerzenia gem Brakuje zestawu deweloperskiego MSYS2. Uruchom ridk install i wybierz opcje zestawu narzędzi MSYS2 i MINGW.
nieprawidłowa opcja: -wersja Do wyboru opcji długiej użyto pojedynczego myślnika. Wpisz ogórek – wersja z dwoma myślnikami.
Niezdefiniowany krok, z sugerowanym fragmentem kodu wydrukowanym poniżej Cucumber znaleziono plik funkcji, ale nie ma pasującej definicji. Wklej proponowany fragment kodu do pliku w folderze features/step_definitions i wypełnij jego treść.
nie można załadować takiego pliku — czekaj Ten klejnot został zainstalowany dla innej wersji Ruby niż ta, która jest uruchomiona. Sprawdź ruby ​​-v i gem list watir w tym samym wierszu poleceń, a następnie ponownie zainstaluj gem.

Gdy scenariusz mnożenia zgłosi zaliczenie, instalacja zostaje zakończona, a ten sam projekt może rozrosnąć się do pełnego testowanie automatyzacji apartament, niezależnie od tego, czy jest używany do testy funkcjonalności lub nocnych testy regresji.

FAQ

Nie. Cucumber-JVM obejmuje Java, Kotlin i Scala, Cucumber.js obejmuje JavaSkrypt i porty istnieją dla kilku innych języków. Opisana tutaj wersja Ruby to oryginalna implementacja, a składnia Gherkina jest identyczna we wszystkich.

Każdy edytor działa, ponieważ plik funkcji jest zwykłym tekstem. RubyMine dodaje autouzupełnianie Gherkina i przeskok do definicji, podczas gdy Visual Studio Code oferuje podobne zachowanie za darmo poprzez rozszerzenie Ruby i Cucumber rozbudowa.

Tak, dla każdego pakietu uruchamia się więcej niż jedna osoba. Plik Gemfile z jawną wersją Cucumber i zatwierdzonym plikiem Gemfile.lock oznacza, że ​​każdy komputer i każdy agent CI rozwiązuje ten sam plik Gemfile, co eliminuje całą klasę błędów typu „działa na moim komputerze”.

Wcale nie. Watir jest wygodnym opakowaniem Selenium, więc możesz wymagać elementu gem selenium-webdriver bezpośrednio w definicjach kroków. Watir po prostu zapewnia krótszą składnię elementów dla projektów Ruby.

Cucumber Już teraz drukuje fragment kodu dla każdego niezdefiniowanego kroku, a asystenci AI rozszerzają to, wypełniając treść z otaczających obiektów strony. Traktuj wynik jako pierwszy szkic, ponieważ wygenerowane selektory często są błędne.

Tak. Copilot rozpoznaje Cechę, Scenariusz, Dane, Kiedy i Wtedy i sugeruje kolejne scenariusze w tym samym stylu. Najsłabiej radzi sobie z oceną, które scenariusze rzeczywiście poszerzają zakres, a które powtarzają już istniejący.

Aktualizacje poprawek w obrębie jednej gałęzi, na przykład z 3.4.0 do 3.4.3, mogą ponownie wykorzystać ten sam katalog i zachować istniejące gemy. Przejście między gałęziami stabilnymi wymaga nowego katalogu docelowego, ponieważ gemy z rozszerzeniami C nie są między nimi kompatybilne.

Trzy z nich zaspokajają większość potrzeb: – próba uruchomienia sprawdza, czy każdy krok ma definicję, bez wykonywania czegokolwiek, – tags uruchamia oznaczony podzbiór scenariuszy, a – format ustawia reportera, na przykład ładne dane wyjściowe lokalnie oraz JSON lub HTML dla serwera kompilacji.

Podsumuj ten post następująco: