오이-시나리오

Scenario핵심 작은 오이 구조 중 하나입니다. 모든 시나리오는 키워드 "시나리오 :"(또는 현지화 된 시나리오)로 시작하고 그 뒤에 선택적 시나리오 제목이옵니다. 각 기능에는 하나 이상의 시나리오가있을 수 있으며 모든 시나리오는 하나 이상의 단계로 구성됩니다. 시나리오의 매우 간단한 예는 다음과 같습니다.

Scenario − 도움말 기능을 확인합니다.

주어진 사용자가 Facebook으로 이동합니다.

사용자가 도움말을 클릭하면 도움말 페이지가 열립니다.

테스트 시나리오를 두 번 이상 실행해야하는 경우를 고려하십시오. 모든 유형의 구독 보유자에게 로그인 기능이 작동하는지 확인해야한다고 가정 해 보겠습니다. 이를 위해서는 로그인 기능 시나리오를 여러 번 실행해야합니다. 코드를 다시 실행하기 위해 동일한 단계를 복사하여 붙여 넣는 것은 현명한 생각이 아닌 것 같습니다. 이를 위해 Gherkin은 시나리오 개요 인 구조를 하나 더 제공합니다.

시나리오 개요는 시나리오 구조와 유사합니다. 유일한 차이점은 여러 입력을 제공한다는 것입니다. 다음 예에서 볼 수 있듯이 테스트 케이스는 동일하고 반복 할 수 없습니다. 하단에는“Username”및“Password”변수에 대한 여러 입력 값이 제공되었습니다. 실제 테스트를 실행하는 동안 Cucumber는 제공된 입력 값으로 변수를 대체하고 테스트를 실행합니다. pass-1이 실행되면 다른 입력 값으로 두 번째 반복을 위해 테스트가 다시 실행됩니다. 이러한 변수 또는 자리 표시자는 작은 오이 문으로 언급 할 때 "<>"로 표시 할 수 있습니다.

Scenario Outline− 소셜 네트워킹 사이트의 로그인 기능. 주어진 사용자가 Facebook으로 이동합니다.

사용자가 사용자 이름을 "<username>"으로, 암호를 "<password>"로 사용하여 로그인하면 로그인이 성공해야합니다.

| username | password  | 
| user1    | password1 | 
| user2    | password2 |

Cucumber 시나리오를 현명하게 정의하기위한 몇 가지 팁과 요령이 있습니다.

  • 각 단계는 명확하게 정의되어 독자에게 혼란을주지 않도록해야합니다.

  • 테스트 시나리오를 반복하지 마십시오. 필요한 경우 시나리오 개요를 사용하여 반복을 구현하십시오.

  • 여러 시나리오 및 시나리오 개요 내에서 사용할 수있는 방식으로 테스트 단계를 개발합니다.

  • 가능한 한 각 단계를 완전히 독립적으로 유지하십시오. 예 : "사용자가 로그인 된 경우". 이것은 두 단계로 나눌 수 있습니다

    • 사용자가 사용자 이름을 입력하면
    • 로그인을 클릭합니다.