레일 2 응용 프로그램에 대한 12,000 줄의 코드 오이 기능이 있습니다. 컨트롤러, 모델, 도우미,보기 페이지 코드와 같은 응용 프로그램 코드의 코드 적용 범위를 얻기위한 모든 기능을 실행하고 있습니다. 모든 기능을 실행하려면 4 시간이 필요합니다. 여전히 100 % 코드 범위를 얻지 못하고 있습니다. 제 질문은 오이 기능을 통해 100 % 코드 범위를 얻는 방법과 모든 기능의 실행 시간을 4 시간에서 가능한 최소 시간으로 줄이는 방법입니다.오이 기능 실행 시간이 걸릴
답변
나는 오이의 속도를 높이는 것과 관련하여 많은 페이지가 있다고 확신한다. http://aaron-jensen.com/post/5019042852/speed-up-your-rspec-cucumber-run은 하나입니다.
오이가 느려지는 것이 코드와 관련이 있으며 사용자 만 볼 수 있기 때문에 프로파일 링을 살펴야 할 수도 있습니다.
통합 테스트는 전체 스택을 테스트 할 때 속도가 느린 것으로 유명합니다 (그 점이 중요 함). 통합 수준에서 모든 것을 테스트하는 것이 너무 느리기 때문에 사람들은 철저한 통합 테스트가 아닌 철저한 단위 테스트를 수행하는 경우가 많습니다.
커버리지 개선에 관해서는 커버리지 리포트를 사용하여 커버리지가 어느 정도인지 알려주는 경우 HTML 리포트에서 어떤 라인이 다루어지지 않는지 알려주고 테스트를 맞출 수 있습니다.
그러나 실제로는 사용자 인터페이스에서 테스트 할 수없는 것들이 있습니다. 견고성을 위해 존재하기 때문입니다. 즉 실제로는 발생하지 않을 것으로 예상되지만, 예상치 못한 이유로 또는 향후 코드 변경으로 인해 발생하는 경우. 이 경우 단위 테스트 만 코드 라인을 처리하는 유일한 방법 일 수 있습니다.
실제로 사용자 상호 작용을 시뮬레이트하기 때문에 기능을 실행하는 데는 시간이 걸립니다. 당신은
cucumber path/to/file.feature:33
여기에 33 실행할 파일의 특정 시나리오의 행 번호를 지정하여 실행하고자하는 정확한 시나리오를 지정하여 동일한 시나리오를 실행 재를 방지 할 수 있습니다.
한 번에 모든 기능을 실행 한 후 앱의 coverage.features 폴더에서 생성되는 코드의 범위가 필요하므로 특정 기능을 실행하고 싶지 않습니다. – Trupti
- 1. SQL 쿼리가 시간이 걸릴 때
- 2. 오이 전체 기능 후크
- 3. 내 이미지로드 시간이 오래 걸릴 때
- 4. autoconf/configure가 cygwin에서 오랜 시간이 걸릴 때
- 5. CakePHP 모델 로딩 시간이 좀 걸릴 때
- 6. SqlDataAdapter.Fill 갑자기 긴 시간이 걸릴 때
- 7. 여러 환경에 대한 오이 시나리오 실행 중?
- 8. SVN에 액세스하기위한 오이 기능 작성
- 9. 오류 : 오이 기능 -n 명령
- 10. R에서 system.time을 사용하면 매우 다양한 시간이 걸릴 수 있습니다.
- 11. ob_flush 실행 시간이 오래 걸림
- 12. 오이 단계의 실행 시간을 측정하는 방법
- 13. 실행 간부 번들 오이 즉시
- 14. 인스턴스 기반의 효율적인 개인 기능 | 실행 시간이 필요합니다
- 15. 쿼리 실행 시간이 느림
- 16. ClickOnce 다운로드 및 설치 시간이 오래 걸릴 때
- 17. C# BackgroundWorker가 시작되는 데 오랜 시간이 걸릴 때
- 18. jpeg 이미지가 검은 딸기로로드하는 데 오랜 시간이 걸릴 때
- 19. Windows 서비스를 정상적으로 종료하는 데 몇 시간이 걸릴 수 있습니까?
- 20. 중복 파일을 읽는 데 다른 시간이 걸릴 것
- 21. Azure 웹 사이트를 구축하면 몇 시간이 걸릴 수 있습니다.
- 22. UIView with UIActivityIndicatorView 무언가를하는 데 오랜 시간이 걸릴 때
- 23. 오라클 SQL 최적화 : SQL 쿼리가 매우 오랜 시간이 걸릴 때
- 24. 정적 콘텐츠의 첫 번째 바이트까지 오랜 시간이 걸릴 때
- 25. ServiceController를 인스턴스화하는 데 너무 많은 시간이 걸릴 때
- 26. 이전 기능 실행 후 기능 실행
- 27. 오이 기능 및 시나리오 추적 솔루션?
- 28. 오이 html.erb가 없을 때 js.erb 기능 테스트
- 29. 오이 기능 테스트에는 몇 분이 걸립니까?
- 30. "오이 기능"을 실행하면 MissingSourceFile이 생깁니다
감사합니다, 훌륭한 설명을위한 matthew. – Trupti
오이 기능을 사용하여 100 % 코드 커버리지를 얻을 수 없습니까? 실제로 내 고객은 rcov 보고서에 나타나는 모든 코드 줄을 녹색으로 표시하고 싶습니다.이 코드는 기능을 포함하고 있으며 현재 70 % 코드가 빨간색으로 표시되어 기능이 해당 코드를 덮지 않습니다. 그럼, 이것이 코드 공중선을 테스트하는 올바른 방법인가요? – Trupti
실제로 70 %는 낮은 코드 적용 범위입니다. 더 많은 것을 얻으면할수록 남은 점수를 얻는 것이 더 힘들어지고 마지막 몇 퍼센트는 종종 가장 힘들어집니다. 통합 테스트에서 다루지 못하는 라인이 있다고 말했을 때, 이는 아마도 2 ~ 3 퍼센트를 구성하는 예외적 인 사례 일 것입니다. –