Come scaricare e installare CUCUMBER in Windows

โšก Riepilogo intelligente

Cucumber installazione attiva Windows necessita di quattro pezzi in ordine: Ruby con il suo kit di sviluppo, il Cucumber La gemma stessa, un editor come RubyMine e una libreria di driver per il browser. Ognuno di questi si installa in pochi minuti.

  • ๐Ÿ”˜ Ruby first: Cucumber Si tratta di una gemma Ruby, quindi l'installer Ruby+Devkit di RubyInstaller deve essere installato prima di qualsiasi altra cosa.
  • โ˜‘๏ธ Un solo comando: Il comando `gem install cucumber` scarica la gemma e le sue dipendenze direttamente da RubyGems tramite riga di comando.
  • โœ… Verificare immediatamente: L'esecuzione del comando `cucumber โ€“version` conferma che la gemma รจ stata risolta e che l'eseguibile รจ presente nel PATH di sistema.
  • ๐Ÿงช Editor facoltativo: RubyMine offre l'evidenziazione della sintassi e la navigazione passo passo, ma qualsiasi editor che salvi testo semplice eseguirร  un file di funzionalitร .
  • ๏ธ Driver del browser: Watir avvolge Selenium e gestisce il browser; il nome attuale del gem รจ watir, non il vecchio watir-webdriver.
  • ๐Ÿ“Š Layout fisso: I file delle funzionalitร  si trovano in features, le definizioni dei passaggi in features/step_definitions, oppure Cucumber non riesce a far corrispondere un passo.

Scarica e installa Cucumber on Windows con Ruby, RubyMine e Watir

Cucumber L'installazione puรฒ sembrare noiosa, ma รจ relativamente facile una volta che i pezzi vengono presi nell'ordine giusto. Ecco la roadmap dei componenti che devono essere installati per realizzare Cucumber lavoro.

Prerequisiti per l'installazione Cucumber on Windows

Cucumber viene distribuito come gemma Ruby, quindi nulla funziona finchรฉ Ruby non รจ presente. Verifica quanto segue prima di scaricare qualsiasi cosa:

  • Windows 10 o versioni successive, 64 bit. RubyInstaller non consiglia piรน la build a 32 bit a meno che non si dipenda da DLL native a 32 bit o oggetti COM.
  • Diritti di amministratore. Il programma di installazione scrive nella cartella Programmi e modifica la variabile d'ambiente PATH.
  • Una connessione Internet. Entrambi i comandi gem install riportati di seguito scaricano i pacchetti da RubyGems.
  • Circa 1 GB di spazio libero su disco per Ruby piรน il kit di sviluppo MSYS2, e ancora di piรน se si aggiunge RubyMine.
  • Un browser per automatizzare. Watir guida Chrome, Edge o Firefox attraverso Selenium, quindi almeno uno deve essere installato.

Ci sono due comandi che vale la pena ricordare per dopo: rubino -v stampa la versione Ruby e gemma -v Stampa la versione di RubyGems. Se uno dei due tentativi fallisce, significa che il PATH non รจ stato aggiornato e il programma di installazione deve essere eseguito nuovamente anzichรฉ in modalitร  debug.

Installa Ruby e DevKit

Iniziate con il pacchetto Ruby+Devkit, che include la toolchain del compilatore necessaria alle gemme con estensioni C.

Passaggio 1) Vai a https://rubyinstaller.org/downloads/ e scegli un programma di installazione. La pagina di download รจ mostrata qui sotto.

Pagina di download di RubyInstaller che elenca i programmi di installazione di Ruby e Ruby+Devkit.

โš ๏ธ Nota sulla versione: l'archivio DevKit separato a cui fa riferimento la procedura guidata originale รจ stato sostituito dalla toolchain MSYS2, che Ruby+Devkit I pacchetti di installazione sono un componente selezionabile. RubyInstaller attualmente consiglia la build Ruby+Devkit 4.0.X (x64) per i nuovi utenti e il kit viene aggiornato in seguito con installazione di cavalletto anzichรฉ rieseguendo dk.rb. I passaggi seguenti rimangono altrimenti invariati.

Passaggio 2) Aprire il file scaricato. Nella prima schermata:

  1. Accetta la licenza
  2. Fai clic sul pulsante Avanti

Schermata del contratto di licenza del programma di installazione di Ruby con il pulsante Avanti

Passaggio 3) Nella schermata successiva:

  1. Seleziona la directory di installazione
  2. Seleziona tutte le opzioni
  3. Fare clic su Installa

Scegliere la directory di installazione di Ruby e selezionare tutte le opzioni di installazione.

Passaggio 4) Nella schermata successiva, fare clic su Avanti.

Schermata di selezione dei componenti del programma di installazione Ruby prima dell'inizio della copia

Passaggio 5) Attendere il completamento dell'installazione.

Stato di avanzamento dell'installazione di Ruby durante la copia dei file su disco.

Passaggio 6) Fare clic su Fine.

Schermata finale del programma di installazione di Ruby con il pulsante Fine

Passaggio 7) Una volta completata l'installazione, esegui Ruby da Windows Menu iniziale.

Windows Voce del menu Start che apre il prompt dei comandi con Ruby

Passaggio 8) Vedrai un prompt dei comandi Ruby simile a Windows finestra di comando.

Finestra del prompt dei comandi Ruby pronta ad accettare i comandi delle gemme

Installazione Cucumber

Con Ruby nel PATH, la gemma stessa รจ un singolo comando.

Passaggio 1) Digitare gem install cucumber nel prompt dei comandi Ruby. Questo comando scarica e installa Cucumber direttamente dalla riga di comando.

Il comando `gem install cucumber` รจ stato digitato nel prompt dei comandi di Ruby.

Dopo pochi secondi il Cucumber La procedura di installazione si avvia e segnala ogni dipendenza scaricata.

Cucumber Output dell'installazione di gem che elenca le dipendenze installate

Passaggio 2) Per verificare se Cucumber installato correttamente, tipo cetriolo โ€“versione. Nota i due trattini: un singolo trattino non รจ un'opzione valida per una stringa lunga.

comando cucumber --version che stampa l'installato Cucumber versione

Installa l'IDE RubyMine

Un editor non รจ strettamente necessario, ma RubyMine supporta Gherkin ed รจ in grado di passare direttamente da un passaggio alla sua definizione. Segui i passaggi seguenti per installarlo.

Schermata di benvenuto della procedura guidata di installazione di RubyMine

Passaggio 1) Fare clic su Avanti per continuare con l'installazione di RubyMine.

La prima pagina del programma di installazione di RubyMine con il pulsante Avanti

Passaggio 2) Scegliere la posizione di installazione.

Selezione della cartella di installazione di RubyMine

Passaggio 3) Impostare le opzioni di installazione.

Opzioni di installazione di RubyMine, come collegamenti e associazioni di file

Passaggio 4) Selezionare la cartella del menu Start.

Scelta della cartella del menu Start per il collegamento a RubyMine

Passaggio 5) Fare clic su Installa.

Dopo aver cliccato su Installa, il programma di installazione di RubyMine sarร  pronto per copiare i file.

Passaggio 6) Fare clic su Fine.

Schermata di completamento dell'installazione di RubyMine con il pulsante Fine

Passaggio 7) Seleziona Non importare le impostazioni.

Finestra di dialogo delle impostazioni di importazione al primo avvio di RubyMine

Passaggio 8) Fare clic su Valuta.

Finestra di attivazione della licenza RubyMine con l'opzione Valuta

Passaggio 9) Accettare la licenza.

Accettazione del contratto di licenza di RubyMine

Passaggio 10) Selezionare Salta i rimanenti e Imposta impostazioni predefinite.

Schermata di personalizzazione iniziale di RubyMine con Salta rimanenti e Imposta impostazioni predefinite

Passaggio 11) Aprire l'editor.

Schermata di benvenuto di RubyMine con l'opzione Apri

Passaggio 12) Creare un nuovo progetto.

Nuova finestra di dialogo del progetto in RubyMine

โš ๏ธ Nota sulla versione: RubyMine รจ un servizio a pagamento JetBrains prodotto con una valutazione a tempo limitato, che รจ ciรฒ che avvia il pulsante Valuta nel passaggio 8. Un'alternativa gratuita รจ Visual Studio Code con un rubino e un Cucumber Estensione (Gherkin); il resto di questa guida funziona allo stesso modo in entrambi gli editor.

Installa il driver web dell'acqua

Cucumber esegue solo i passaggi. Qualcos'altro deve aprire il browser e quel compito appartiene a Watir, un wrapper Ruby attorno SeleniumSe preferisci controllare direttamente il browser, lo stesso progetto puรฒ chiamare un semplice Script WebDriver.

Passaggio 1) Fare clic su Avviare il prompt dei comandi con Ruby eseguendo il comando di installazione gem install watir-webdriver.

gem install watir-webdriver in esecuzione nel prompt dei comandi Ruby

Passaggio 2) La gemma watir-webdriver viene installata correttamente.

Output della console che conferma l'installazione della gemma watir-webdriver

โš ๏ธ Nota di deprecazione: la gemma watir-webdriver รจ stata integrata nel progetto principale acqua gemma a Watir 6.0 e il suo repository ora indirizza gli utenti solo al sostituto. Su una nuova macchina eseguire gem install watir Invece. Il comando storico sopra riportato รจ mantenuto perchรฉ รจ quello che mostrano gli screenshot.

Cucumber Struttura delle cartelle del progetto

Cucumber Il sistema individua i file per convenzione, non per configurazione, quindi la struttura รจ piรน importante di quanto sembri a prima vista. Un progetto minimo si presenta cosรฌ:

sentiero Contiene
Caratteristiche/ Ogni file .feature รจ scritto in Gherkin. Cucumber Le ricerche vengono effettuate qui per impostazione predefinita.
caratteristiche/definizioni_di_passo/ I file Ruby i cui blocchi corrispondono a ciascuna riga Given, When e Then.
funzionalitร /supporto/ Il codice di configurazione viene caricato prima dell'esecuzione di qualsiasi passaggio, come ad esempio env.rb, che รจ il file in cui il browser viene solitamente aperto e chiuso.

Due semplici regole evitano molta confusione in seguito. Cucumber ignora la parola chiave quando corrisponde a un passaggio, quindi Dato che ho la variabile a and Poi ho la variabile a entrare in conflitto con la stessa definizione. E il testo del passaggio nel file delle funzionalitร  deve corrispondere esattamente all'espressione regolare nel file dei passaggi, punteggiatura inclusa.

Nome Cucumber Copione

L'esempio seguente moltiplica due numeri, il che รจ sufficiente a dimostrare che il file delle funzionalitร , il file dei passaggi e la gemma comunicano tra loro.

Passaggio 1) Apri l'editor RubyMine da Windows Menu iniziale.

Apertura di RubyMine dal Windows menu di avvio

La dashboard di RubyMine appare come mostrato di seguito.

Dashboard di RubyMine visualizzata dopo l'apertura dell'editor

Passaggio 2) Crea un nuovo progetto nell'editor di RubyMine.

Avviare un nuovo progetto dalla dashboard di RubyMine

Assegna un nome e una posizione al progetto, quindi conferma.

Inserimento del nome e della posizione del progetto nella finestra di dialogo Nuovo progetto

Passaggio 3) Creare una directory di file.

Creazione di una nuova directory all'interno del progetto RubyMine

La nuova directory appare nell'albero del progetto.

Struttura ad albero del progetto che mostra la directory delle funzionalitร  appena creata

Passaggio 4) Crea e salva un file in la tua cartella/funzionalitร / con il nome nomefile.caratteristica.

Creazione del file delle funzionalitร  all'interno della directory delle funzionalitร 

Conferma che il nome del file termini con l'estensione .feature.

Assegnare al nuovo file l'estensione .feature

Passaggio 5) Per eseguire il nostro scenario, salvare i seguenti comandi nel file delle funzionalitร .

File delle funzionalitร  aperto nell'editor RubyMine, pronto per lo scenario

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

Passaggio 6) Ora esegui il primo file feature.

Fare clic su Avviare il prompt dei comandi con Ruby e avviare il comando cucumber dalla cartella del progetto.

Avvio del prompt dei comandi Ruby per eseguire il file delle funzionalitร 

La console riporta il risultato come mostrato di seguito.

Output della console dal primo Cucumber esecuzione del file delle funzionalitร 

Passaggio 7) Creare il file di definizione dei passaggi per il file delle funzionalitร .

Crea una nuova cartella nell'editor di RubyMine.

Creazione di una nuova cartella nel progetto RubyMine per le definizioni dei passaggi

Assegnazione di un nome alla nuova cartella delle definizioni dei passaggi

Passaggio 8) Salva il file in la_tua_cartella/funzionalitร /definizioni_dei_passaggi con il nome test_step.rb.

Salvataggio di un nuovo file Ruby all'interno della cartella delle definizioni dei passaggi.

Inserimento di test_step.rb come nome del file di definizione del passaggio

Passaggio 9) Scrivere il seguente codice nel file step.

Aprire il file di definizione dei passaggi nell'editor prima di aggiungere il codice.

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

Passaggio 10) Ora esegui nuovamente il file delle funzionalitร .

Eseguire il file delle funzionalitร  una seconda volta dopo che i passaggi sono stati definiti

Il risultato viene stampato nella console e ogni passaggio viene segnalato come superato.

Cucumber output della console dopo l'esecuzione del file feature con i passaggi definiti

Uncommon Cucumber Errori di installazione e come risolverli

La maggior parte dei fallimenti in questa fase derivano dall'ambiente piuttosto che da CucumberQuesti sono quelli che vale la pena riconoscere a prima vista.

Messaggio Causare Fissare
'cucumber' non รจ riconosciuto come comando interno o esterno La directory bin di Ruby non รจ presente nel PATH oppure ti trovi in โ€‹โ€‹una normale finestra del prompt dei comandi. Apri Avviare il prompt dei comandi con Rubyoppure reinstallare Ruby selezionando l'opzione PATH.
SSL_connect ha restituito=1 errno=0 stato=errore: verifica del certificato non riuscita RubyGems non รจ in grado di convalidare la catena di certificati, solitamente protetta da un proxy aziendale. Aggiorna RubyGems con gem update โ€“system oppure configura il proxy con l'opzione โ€“http-proxy.
ERRORE: Impossibile compilare l'estensione nativa del gem. Il kit di sviluppo MSYS2 รจ mancante. Esegui il comando ridk install e seleziona le opzioni della toolchain MSYS2 e MINGW.
opzione non valida: -versions Per le opzioni lunghe รจ stato utilizzato un singolo trattino. Digita cucumber โ€“versione con due trattini.
Passaggio non definito, con un frammento di codice suggerito stampato sotto di esso Cucumber Trovato il file delle funzionalitร , ma nessuna definizione corrispondente. Incolla il frammento di codice suggerito in un file nella cartella features/step_definitions e inserisci il corpo del file.
Impossibile caricare questo file โ€” watir La gemma รจ stata installata per una versione di Ruby diversa da quella in esecuzione. Esegui i comandi `ruby -v` e `gem list watir` nello stesso prompt, quindi reinstalla la gemma.

Una volta che lo scenario di moltiplicazione segnala un successo, l'installazione รจ terminata e lo stesso progetto puรฒ crescere fino a diventare completo test di automazione suite, sia che venga utilizzata per test funzionali o ogni notte test di regressione.

DOMANDE FREQUENTI

No. Cucumber-Coperture JVM Java, Kotlin e Scala, Cucumber.js copre JavaLo script รจ disponibile anche in altre lingue. La versione Ruby qui descritta รจ l'implementazione originale e la sintassi di Gherkin รจ identica in tutte le altre.

Qualsiasi editor funziona, perchรฉ un file feature รจ testo semplice. RubyMine aggiunge il completamento automatico di Gherkin e il salto alla definizione, mentre Visual Studio Code offre un comportamento simile gratuitamente tramite un'estensione Ruby e un Cucumber estensione.

Sรฌ, per qualsiasi suite eseguita da piรน persone. Un Gemfile con una versione Cucumber esplicita e un Gemfile.lock confermato significa che ogni macchina e ogni agente CI risolve la stessa gemma, eliminando un'intera classe di errori del tipo "funziona sulla mia macchina".

Affatto. Watir รจ un involucro pratico Selenium, quindi puoi richiedere la gemma selenium-webdriver direttamente nelle definizioni dei tuoi step. Watir Semplicemente, offre una sintassi degli elementi piรน breve per i progetti Ruby.

Cucumber Il sistema stampa giร  un frammento di codice per ogni passaggio non definito, e gli assistenti basati sull'IA estendono questa funzionalitร  completando il corpo del messaggio con i dati degli oggetti della pagina circostanti. Considera l'output come una prima bozza, poichรฉ i selettori generati sono spesso errati.

Sรฌ. Copilot riconosce Feature, Scenario, Given, When e Then e suggerirร  ulteriori scenari nello stesso stile. Il suo punto debole รจ la capacitร  di valutare quali scenari aggiungono effettivamente copertura anzichรฉ ripetere uno scenario giร  esistente.

Gli aggiornamenti di patch all'interno dello stesso ramo, ad esempio dalla versione 3.4.0 alla 3.4.3, possono riutilizzare la stessa directory e mantenere le gemme esistenti. Il passaggio tra rami stabili richiede invece una nuova directory di destinazione, poichรฉ le gemme con estensione C non sono compatibili tra di essi.

Tre opzioni coprono la maggior parte delle esigenze: โ€“dry-run verifica che ogni passaggio abbia una definizione senza eseguire nulla, โ€“tags esegue un sottoinsieme etichettato di scenari e โ€“format imposta il reporter, ad esempio un output formattato in locale e JSON o HTML per un server di build.

Riassumi questo post con: