레일스 앱에 대한 자세한 rspec 카피 바라 통합 및 유닛 테스트를 완료했습니다. 여기에는 Omniauth (twitter) 로그인을 조롱하고 양식을 채우고 데이터 유효성 검사 등이 포함됩니다. 별도의 컨트롤러 또는 기능 테스트를 작성할 필요가 있습니다. 귀하의 요청 (통합) 사양은 당신이 덮여있어 모든 코드 경로를 운동하는 경우 레일 rspec 컨트롤러 테스트 대 통합 테스트
는 귀하의 의견 등 개인적으로답변
더 독서에 대한 링크 감사하겠습니다, 나는 생각한다. Ryan Bates는 그가 여기에서 시험하는 방법에 관해 큰 Railscast를 가지고있다 : http://railscasts.com/episodes/275-how-i-test?autoplay=true와 약 5:05 그는 유사한 물건을 말한다. 당신처럼 나는 컨트롤러 스펙보다는 통합 테스트를 쓰고 싶다. 어쨌든 대부분의 시간 컨트롤러는 CRUD 유형의 작업을 앞당기는 것입니다 (특히 컨트롤러에서 도메인 로직을 유지하는 데주의를 기울이는 경우 특히 그렇습니다). 따라서 테스트중인 모든 것은 스캐 폴딩입니다.
나는이 의견으로 소수에 속한다는 것을 알고 있기 때문에 여기에서 악마의 옹호자를 플레이 할 것이다. 나는 실제로 컨트롤러 테스트를 철저히하는 것을 선호한다. 몇 가지 이유 :
1) 컨트롤러 수준에서 통합 테스트 수준보다 모든 경로와 결과를 체계적으로 테스트하는 것이 더 쉬운 것으로 나타났습니다. 통합 테스트는 기본적으로 단순한 경로이며 가장 일반적인 오류 경로 중 일부입니다.
2) 컨트롤러 수준에서 많은 보안 문제가 발생합니다. 철저한 테스트를 통해 악의적 인 무언가가 내 모델 논리를 통과 할 수 없도록 보장합니다.
3) 이것은 주관적이지만 실제로 내 응용 프로그램이 통과 할 수있는 길쭉한 길에 대해 생각하게 만듭니다. 다른 사람이 잘못된 비밀번호 재설정 토큰을 URL에 넣으려고하면 어떻게됩니까? 컨트롤러 테스트를 통해 모든 옵션을 고려할 수 있습니다.
4) 통합 테스트와 달리 테스트가 상당히 간단합니다. 각각의 액션은 루비 메서드입니다!
- 1. 레일 4가있는 Rspec 테스트 컨트롤러
- 2. RSpec 레일 테스트 데이터
- 3. 레일 3 RSpec 컨트롤러 테스트 실패/오류 :
- 4. 오이없는 Rspec 통합 테스트?
- 5. 레일 통합 테스트
- 6. 통합 테스트 대 테스트 커버리지
- 7. RSpec 컨트롤러 테스트, 포스트 액션 테스트
- 8. 실패 Rspec 테스트 케이스 + 통합 테스트
- 9. rspec/devise로 로그인 통합 테스트
- 10. rspec 컨트롤러 테스트 중 레일 컨트롤러 필터를 기록하는 방법
- 11. 보석 내의 프레임 워크 통합 테스트 : 보석 레일 통합을위한 rspec 컨트롤러 테스트 설정 방법
- 12. 모든 요청에서 301을 반환하는 RSpec 컨트롤러 테스트
- 13. RSpec 컨트롤러 ajax 요청 테스트
- 14. 변수 통과 레일 테스트 컨트롤러
- 15. 레일 3 컨트롤러 테스트
- 16. 레일 4 컨트롤러 테스트
- 17. 세션이있는 레일 컨트롤러 테스트
- 18. 레일 컨트롤러 테스트
- 19. 레일 통합 테스트 문제
- 20. 레일 : 통합 테스트 데이터
- 21. rspec 테스트 레일 엔진 생성기
- 22. RSpec 및 Devise와의 통합 테스트 방법
- 23. Rspec & Capybara를 사용한 레일 3의 세션 테스트
- 24. watchr 대 레일 테스트 용 자동 테스트
- 25. 통합 Grails REST 컨트롤러 테스트
- 26. CakePHP 2.0 통합 테스트
- 27. 레일 테스트
- 28. 클래스간에 Rspec 테스트 공유
- 29. 페이지 수정 해킹에 대한 레일 통합 테스트?
- 30. 레일스 rspec 모델 및 컨트롤러 테스트
귀하의 의견을 기다립니다. – user937531