배경의 단계는 예제와 결합 할 수 없습니다. 그것은 Behat의 한계입니까?배경의 단계를 Behat의 예제와 결합 할 수없는 이유
다음 기능 파일이 있습니다.
Background:
Given I have the login Page
When I login to the application using "<username>"
Then the list is displayed
When I select an item from the list
Then I am taken to the Dashboard
When I navigate to the Overview Page
Then the Overview Page is displayed
@javascript @frontend @devlocal
Scenario Outline: To verify the Overview page content
Then overview page main headings are displayed
Examples:
| username | role |
| RoleUser | ROLE_USER |
| RoleAdmn | ROLE_ADMIN |
이 오류 발생 : [Behat \ 작은 오이 \ 예외 \의의 ParserException]
예상 설명 또는 시나리오 또는 개요 또는 단계 토큰을하지만 라인의 예를 가지고 : 파일에 15의 경우 :/var/기능/개요 .feature
"Background (배경)"에서 너무 많은 단계가있는 이유는 이것이 페이지로 이동하는 논리적 흐름이기 때문입니다. 그리고 이러한 단계를 사용하여 여러 가지 시나리오가 있습니다.
"시나리오"의 "백그라운드"에서 모든 단계를 사용하는이 문제에 대한 해결 방법이 있습니다. 이것은 절대적으로 잘 작동합니다. 그러나 나는이 기능에 대해 5 가지 시나리오를 가지고 있으며 5 가지 시나리오 모두에서 동일한 단계를 복사하여 붙여 넣으면 절대적으로 복잡하고 성가신 것처럼 보입니다. 이것이 배경 섹션을 사용하는 주된 이유라고 생각했습니다. 여기
내가 지금 사용하고 무엇을 :배경 : 내가
@javascript @frontend @devlocal
Scenario: To verify the Overview page content
When I login to the application using "<username>"
Then the list is displayed
When I select an item from the list
Then I am taken to the Dashboard
When I navigate to the Overview Page
Then the Overview Page is displayed
Then overview page main headings are displayed
Examples:
| username | role |
| RoleUser | ROLE_USER |
| RoleAdmn | ROLE_ADMIN |
는 다른 모든 시나리오에 대한 시나리오 섹션에서 모든 단계를 상상해 로그인 페이지에게이 주어
감사합니다. Ian. 6 단계를 2 단계로 결합하면 무엇을 의미합니까? 이것은 6 단계의 모든 논리를 2로 결합한다는 것을 의미합니까? 이것은 약간의 중복성이 아닌 것입니다 (다른 시나리오에 대해 동일한 코드를 다시 작성함). –
배경에 각 윤곽에 "상속 된"공통 논리가 있습니다.이 공통 로직을 백그라운드에서 다른 시나리오로 분리 할 수 있으므로 백그라운드 단계가 각 시나리오 개요에서 통과하는지 확인하는 대신 별도의 시나리오 개요에서 동일하게 수행 할 수 있으므로 다른 모든 다섯 가지 시나리오 개요의로드가 줄어 듭니다. 로그인이 필요하고 시나리오 별 테스트가 시작되는 페이지로 이동하면됩니다. –
코드에서 동일한 문자를 사용하면 일부 측면에서 중복으로 간주 될 수도 있습니다. 당신은 한계가 있으며 가능한 한 자신을 반복 할 수있는 방법을 찾고 싶습니다. 코드를 재정렬하여 DRY가되도록 만들면 상당히 개선 될 수 있습니다. –