2012-01-12 4 views
3

나는 다음과 같은 작은 오이 시나리오가 있습니다오이 -이 Gherkin 시나리오에서 데이터 중복을 제거하는 방법은 무엇입니까?

Scenario: User Login 
    Given a user account exists the email "[email protected]" and password "surprise" 
    And I am on the login page 
    When I fill in the following: 
     | email | [email protected] | 
     | password | surprise | 
    And I press "Submit" 
    Then.... 

두 번째 줄은 차례로 FactoryGirl 공장에 이러한 세부 사항을 passess 단계 정의에 이메일 주소 & 비밀번호를 전달합니다.

기본적으로이 시나리오에서 데이터 중복을 제거하는 방법을 모르겠지만 테이블을 사용하는 방법에 대해 생각했지만 어떻게 도움이되는지 알 수 없지만이 방법에 대한 아이디어가 누구에게 있습니까? 미리 감사드립니다! 그들은 우리가 사용하는 패턴은 몇 가지 시나리오에 걸쳐 공통적으로 추상적 인 세부 사항입니다 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 | 
    | [email protected] | surprise | 

답변

4

당신은, 당신의 이메일과 비밀번호 필드에 대한 FIT 같은 테이블을 사용할 수 있습니다 ..

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

유효 사용자 이름, 유효한 암호, 유효하지 않은 암호 등과 같은 기본값이있는 yaml 파일이 있습니다. 우리 단계에서이 파일을 호출합니다.

예제를 많이 쓰고 싶다면 다른 대답이 더 좋습니다. 우리가 자주 로그인하려는 곳에서 작동하지만 항상 모든 시나리오에서 "지루한"내용을 지정하지는 않습니다.

0

의 예에서 사용하는 같은