2016-02-17 2 views
1

Existe-t-il un moyen de déclarer une variable dans un fichier de caractéristiques pour ensuite l'utiliser dans un test de concombre? Quelque chose comme ceci:Utiliser une valeur dans un fichier de caractéristiques dans un test de concombre?

myFile.feature

Given whenever a value is 50 

myFile.java

@Given("^whenever a value is 50$") 
public void testing(value) { 
    assertEqual(value, 50); 
} 

Honnêtement, je ne sais même pas ce que cela ressemblerait. Mais j'aimerais ne pas avoir à déclarer une valeur dans le fichier de caractéristiques ET le test de concombre. Merci!

+0

Pourquoi voudriez-vous faire cela. Donnez un meilleur exemple et peut-être que quelqu'un peut donner une meilleure réponse. – diabolist

+0

kroe761 Vous devriez accepter la réponse de David Baak, c'est la bonne. @diabolist Sérieusement? C'est fait ** tout le temps **. – MikeJRamsey56

+0

@ MikeJRamsey56 alors vous pensez que la réponse de David Baak, répond à la question! Je pensais que OP était après quelque chose d'autre, cette réponse est trop évidente, et n'a rien à voir avec «déclarer une variable dans un fichier de caractéristiques». De toute façon, nous ne le saurons jamais à moins que l'OP revienne et clarifie – diabolist

Répondre

3

Oui, vous pouvez! Écrivez l'étape donnée dans la fonction.

Feature: foobar 

Scenario: something 
    Given whenever a value is 50 

Puis exécutez-le comme un test JUnit. Vous verrez quelque chose comme ça dans la console.

@Given("^whenever a value is (\\d+)$") 
public void whenever_a_value_is(int arg1) throws Throwable { 
    // Write code here that turns the phrase above into concrete actions 
    throw new PendingException(); 
} 

Ensuite, vous pouvez copier + coller et de le modifier à:

@Given("^whenever a value is (\\d+)$") 
public void whenever_a_value_is(int value) { 
    assertEquals(value, 50); 
}