2012-03-20 1 views
1

나는 Ruby on Rails 3.2.2와 Cucumber를 오이 레일 젬과 함께 사용하고 있습니다. 나는 Cucumber 태그가 응용 프로그램 전반에 걸쳐 일반적으로 사용되는 것을 알고 싶습니다. 또는 태그를 "효율적"/ "유용"하게 만들기 위해 내가 생각해야하는 기준에 대해 적어도 알고 싶습니다. 더, 나는 "어떻게"/ "어떤 방법으로" "오이"꼬리표를 사용할 수 있었는지 알고 싶습니다.일반적으로 사용되는 오이 태그는 무엇입니까? "어떻게"/ "어떤면에서"나는 그것들을 "사용할"수 있습니까?

답변

0

태그는 특정 테스트를 실행하지 않도록 선택하거나 제외하는 데 가장 일반적으로 사용됩니다. 특정 상황의 테스트 '그룹'특정 테스트 실행을위한 실행 실행 여부를하는데 유용하다 무엇을 지시하지만, 몇 가지 일반적인 예는 수 :

  • @slow - 실행하는 데 시간이 오래 걸리는 테스트를 나타내고, 대부분의 테스트 실행에서 이것을 제외하고 야간 빌드에서만 실행하여 개발자가 매번 기다리지 않아도되도록 할 수 있습니다.
  • @wip -이 테스트는 미완성 기능을 수행하므로 기능을 개발하는 동안 실패 할 것으로 예상됩니다 (완료되면 완료 될 때 @wip 태그가 제거됨). @wip 테스트가 실제로 @release_x, @sprint_y, @version_z 등을 통과하면 0이 아닌 종료 코드를 반환하므로 이는 매우 중요합니다. 많은 팀이 각 테스트에 어떤 릴리스/스프린트/버전이 포함되어 있는지 태그를 지정하므로 개발 중에 최소한의 테스트를 실행할 수 있습니다. 일반적으로 테스트에 첨부 된 상태를 유지한다는 점을 제외하면 @wip 태그와 동일합니다. 따라서 특정 기능이 도입되었을 때 항상 알 수 있습니다.
  • @payments, @search, @seo 등 기본적으로 테스트의 논리적 그룹화는 피쳐 파일의 구성에 의해 표현되지 않습니다. 테스트가 크로스 커팅 문제와 관련이 있거나 프로젝트가 다른 라인의 구성 요소로 나뉘어 기능 파일에있는 경우 일반적으로 사용됩니다.

태그는 특정 태그를 사용하여 테스트하기 전, 후에 또는 '주위를'실행할 수있는 코드 비트를 실행하는데도 사용됩니다. 이 중 몇 가지 예는 다음과 같습니다

  • @javascript는 - 후크는 JS를 지원하는 일에 HTTP 전용 드라이버로 전환 할 수 있도록 테스트, 자바 스크립트 지원이 필요하다는 것을 나타냅니다. 카피 바라는 태그 뒤에 드라이버가 있으면 자동으로 전환하여 한 걸음 더 나아갑니다 (예 : @desktop, @mobile, @tablet 드라이버를 사용할 수 있음)
  • @logged_in -이 테스트는 다음과 같은 상황에서 실행해야 함을 나타냅니다. 로그인 한 사용자는 배경 섹션이 더 일반적으로 사용되지만 태그로 표현하는 것이 가끔 적합합니다.

또한 태그는 정보 용으로 만 사용할 수 있습니다. 팀은 관련 문제 번호, 저자, 개발자 등 여러 가지로 테스트에 태그를 붙이는 것을 보았습니다. 그 중 많은 부분이 유용 할 수 있습니다 (그러나 그 중 많은 부분이 소스 제어에서 쉽게 발견되는 정보를 복제하므로 많은주의를 기울였습니다) .