Question

Je le scénario Gherkin suivant:

Scenario: User Login
    Given a user account exists the email "james.smith@somesite.com" and password "surprise"
    And I am on the login page
    When I fill in the following:
      | email | james.smith@somesite.com |
      | password | surprise |
    And I press "Submit"
    Then....

La deuxième ligne passe l'adresse e-mail et mot de passe à une définition de l'étape qui, à son tour passess ces détails à une usine de factorygirl.

En fait, je ne suis pas sûr de savoir comment supprimer ce duplication des données de ce scénario, je pensais à l'aide de tables, mais ne peux pas voir comment cela contribuerait, quelqu'un a des idées sur la façon de le faire? Merci à l'avance!

Était-ce utile?

La solution

Vous pouvez utiliser un FIT comme table pour vos champs e-mail et mot de passe, comme ils utilisent dans l'exemple https://github.com/cucumber/cucumber/blob/master/examples/i18n/en/features/addition.feature

Scenario Outline: User Login
    Given my account exists with email <email> and password <password>
    And I am on the login page
    When I fill the email <email>
    And I fill the password <password>
    And I press "Submit"
    Then ...

Examples:
    | email        | password |
    | john@doe.com | surprise |

Autres conseils

Le modèle que nous utilisons est aux détails abstraits qui sont communs à plusieurs scénarios ...

Given my user exists
And I am on the login page
When I login with my credentials
Then I should .... 

Nous avons ensuite un fichier YAML avec des valeurs par défaut comme nom d'utilisateur valide, mot de passe valide, mot de passe invalide ... Nos pas appeler dans ce fichier.

L'autre réponse est mieux si vous voulez essayer beaucoup d'exemples, je pense que fonctionne le nôtre où vous voulez vous connecter souvent, mais pas toujours précise « ennuyeux » des choses dans chaque scénario.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top