2012-01-04 6 views
6

Sto usando Jbehave come framework BDD. Sto cercando un modo per generare automaticamente candidati metodo passo stub da scenari di testo comeauto generare stub metodo-passo candidato da scenari stext in JBehave

Given there is a flight 
And there is a customer 
When the customer books the flight 
Then the customer is shown on the manifest 

a Java in questo modo:

<@> Given("there is a flight") 
<[email protected]> Pending 
public void thereIsAFlight() { 
} 

<@> Given("there is a customer") // note 'Given', even though story line is 'And' 
<@> Pending 
public void thereIsACustomer() { 
} 

<@> When("the customer books the flight") 
<@> Pending 
public void theCustomerBooksTheFlight() { 
} 

<@> Then("the customer is shown on the flight manifest") 
<@> Pending 
public void thenTheCustomerIsShownOnTheFlightManifest() { 
} 

fa JBehave fornire come una funzionalità implicita o persone usano qualche IDE collegare ? Apprezzerò molto ogni aiuto qui.

risposta

5

Quando si esegue JBehave, vengono tracciati tutti i passaggi che non hanno trovato un codice di associazione corrispondente e hanno eseguito il dump delle corrispondenti implementazioni di stub, in modo abbastanza simile a ciò che è stato scritto. Questo output è disponibile sulla console ma anche nei report HTML (se li si desidera attivare). Copia e posizionali nella tua classe di passaggi.

Se stai chiedendo che JBehave scriva automaticamente le implementazioni di stub nei file .java, allora dubito fortemente che esista una funzionalità di questo tipo: sarebbe difficile sapere quali passi utilizzare il codice classe &. (Accanto a problemi di integrazione SCM e così via.)

+1

Questa funzionalità esiste per cetriolo-jvm. Sto pensando di cambiare i motori a causa della mancanza di supporto per una funzionalità che dovrebbe far parte di qualsiasi motore di test bdd standard gold. – Ajax

0

io uso IntelliJBehave: https://github.com/kumaraman21/IntelliJBehave/wiki non genererà metodo automaticamente, ma ti fa lasciare che alcune abilità utili come: l'evidenziazione della sintassi, la navigazione da passi per metodi, errore mettendo in evidenza e altro ancora.