3

Rails 애플리케이션의 통합 테스트 실행 시간을 줄이기 위해 성공 사례와 실패 사례에 대한 정보를 공유하고 다른 사람들의 의견을 듣고 싶습니다 ('보통'테스트, 오이 또는 RSpec 기반) .Rails 통합 테스트 : 실행 시간 단축

이 질문은 데이터베이스, 뷰 렌더링 및 JavaScript/AJAX와 관련된 테스트를 의미합니다. E.i. 테스트는 응용 프로그램의 느린 부분을 모방하거나 모의하지 마십시오.

답변

1

작성자의 답변입니다. 두 가지를 시도했습니다. 즉, 플러그인 플러그인과 메모리 데이터베이스입니다. 내 dev 구성 : Ubuntu VirtualBox는 Win7, Ruby 1.8.7, Rails 3, SQLite에서 호스팅됩니다.

Spork 플러그인 테스트 시간이 35 초에서 2 초로 단축되었습니다. 나는 here 단계를 요약했지만 github readme에 설명되어 있습니다. This post은 Guard에서이 파일을 사용하여 파일이 변경 될 때 spork 서버를 다시 시작하는 방법을 설명합니다.

실행 시간을 줄이기 위해 in-memory database을 사용하려고했습니다. 경우에 따라 실행 시간을 10 % 단축 할 수 있지만 스키마를 작성하기 위해 실행 시간이 2 초가 소요됩니다. 그리고 결과가 훨씬 더 나면 개선을 관찰 할 수있었습니다. 그래서 나는 그 개선이 문제의 가치가 없다고 스스로 결정했다.

루비 1.8.7을 1.9.2으로 바꾸려면 I used RVM도 사용하십시오. 실행 시간이 58 초에서 42 초로 단축되었습니다.

결론 : 1.8.7을 1.8.2로 바꾸면 TDD 환경이 크게 향상 될 수 있습니다.