RSpec : 기능과 요청 사양의 차이점은 무엇입니까?
Rspec의 기능 사양 과 요청 사양 의 개념적 차이점은 무엇입니까 ?
기능 사양 문서에서 :
기능 사양은 응용 프로그램을 통해 여러 기능을 연습하기위한 고급 테스트입니다. 외부 인터페이스 (일반적으로 웹 페이지)를 통해서만 응용 프로그램을 구동해야합니다.
요청 사양의 경우 :
요청 사양은 Rails의 통합 테스트에 대한 얇은 래퍼 (wrapper)를 제공하며 라우팅 (Rails에서 제공) 및 스터 빙 (스텁)없이 전체 스택을 통해 동작을 유도하도록 설계되었습니다. 요청 사양을 통해 다음을 수행 할 수 있습니다.
- 단일 요청을 지정하십시오
- 여러 컨트롤러에서 여러 요청을 지정
- 여러 세션에서 여러 요청을 지정
기능 사양은 Capybara를 사용 하고 요청 사양은 사용 하지 않는다는 것을 알고 있습니다. 그러나 그것은 다른 개념에는 거의 도움이되지 않습니다.
개념적인 차이점은 일반적으로 사용자 스토리를 테스트하고 있으며 모든 상호 작용은 사용자 인터페이스를 통해 이루어져야한다는 것입니다. 이것이 바로 Capybara가 제공하는 곳입니다. 요청 사양은 여전히 응용 프로그램의 동작을 테스트하고 있으며 수용 테스트가 가질 수있는 가독성을 기대하지 않습니다. 따라서 수용 테스트를위한 개선 된 구문을위한 기능이 있습니다.
기술적 인 차이점에는 요청 사양 랩 Rails 통합 테스트가 포함되지만 기능 사양에는 포함되지 않습니다. 즉, 요청 스펙을 사용하면 응답에 대해 get, post, put, delete 및 assert 메소드를 사용할 수 있습니다. 기능 사양을 사용하면 브라우저를 통한 모든 상호 작용을 유도하고 방문 및 페이지에 대한 주장과 같은 방법을 사용해야합니다.
github의 rspec-rails 소스 코드에서 feature_spec.feature를 읽는 것이 좋습니다. 이게 도움이 되길 바란다.
'IT박스' 카테고리의 다른 글
Visual Studio Code에서 git history를 어떻게 볼 수 있습니까? (0) | 2020.07.29 |
---|---|
제목 줄의 시작 부분에서만 텍스트를 검색하는 Gmail 필터를 만드는 방법은 무엇입니까? (0) | 2020.07.29 |
const, non-const, getter를 복제하는 우아한 솔루션? (0) | 2020.07.29 |
Gradle,“sourceCompatibility”대“targetCompatibility”? (0) | 2020.07.29 |
getImageData () 오류 수정 방법 교차 출처 데이터로 인해 캔버스가 오염 되었습니까? (0) | 2020.07.29 |