2012-10-03 11 views

risposta

15

Ecco un snippet dalla repo Cetriolo-JVM su come eseguire l'esempio java-helloworld passando opzioni di cetriolo:

mvn test -Dcucumber.options="--format json-pretty --glue classpath:cucumber/examples/java/helloworld src/test/resources" 

Tenete a mente che esso avrà la precedenza su tutte le opzioni nella @Cucumber. Annotazione delle opzioni che hai su "RunCukesTest". Non ho avuto modo di lavorare per i miei test ma forse questo aiuterà.

Quindi sembra che sia necessario fornire tutte le opzioni necessarie per eseguire cucumber, incluso il percorso di classe java e dove si trova il codice utilizzando il parametro "--glue".

+0

Grazie! Sto cercando di fare "--name Something" per eseguire una funzione o uno scenario specifici. Ho trovato questo non ha funzionato se la funzione o lo scenario che si desidera eseguire ha spazi nel nome. Dovresti sfuggire agli spazi nella riga di comando? –

+0

Sì, penso che avresti bisogno di citazioni. Se le virgolette doppie (") non funzionano, prova le virgolette singole ('), puoi anche provare a sfuggire alle virgolette con una barra o se tutto il resto fallisce sostituire la variabile. Per sostituzione variabile, voglio dire qualcosa di simile, ad esempio in Linux: FEATURE_NAME export = "La mia caratteristica con spazi" prova mvn -Dcucumber.options = "- nome $ FEATURE_NAME" ... etc Solo alcune idee, sto ancora cercando di farlo lavorare per il mio caso particolare :) – Fab

+1

Penso che ci sia un bug in questo settore sollevato un mese fa che non è stato ancora risolto, https://github.com/cucumber/cucumber-jvm/issues/379 –

0

I test sono in esecuzione in JVM separata, quindi è necessario specificare la proprietà di sistema nella configurazione del plug-in di test (ad esempio surefire o config del plugin failsafe in pom.xml).

Problemi correlati