레일 앱을 테스트하는 가장 좋은 방법은 무엇입니까?
테스트 먼저.
더 진지하게, 당신은 다른 일을하도록 고안된 여러 가지 도구를 나열했습니다.
- Shoulda는 테스트 실행을위한 테스트 프레임 워크이며 테스트 작성을위한 매처와 어설 션 세트입니다.
- 모카는 모킹 및 스터 빙 라이브러리입니다.
- Rspec은 조롱 도구와 matchers가 포함 된 테스트 프레임 워크입니다.
- 오이는 기능 테스트를 작성하기위한 프레임 워크입니다.
- 팩토리 걸은 테스트에 사용하는 도메인 개체를 작성하기위한 프레임 워크입니다.
그 중 Shoulda 또는 Rspec은 Test :: Unit을 대체 할 수 있지만 나머지는 Test의 다른 영역에 도구를 제공합니다. 당신이 필요로하는 것은 필기 시험을보다 쉽고 효과적으로 만들어 줄 것이라고 생각하는 것에 달려 있습니다.
Test :: Unit unit tests에 익숙하고 추가 도구를 배우는 데 관심이있는 사람은 다음을 제안합니다.
Test :: Unit을 사용하는 기존 프로젝트가있는 경우 모카의 조롱과 스터 빙을 추가하는 것이 좋습니다. 그러면 집중된 단위 테스트를 더 쉽게 작성할 수 있습니다. 이미 설치물을 가지고 있다면, 공장 모델을 사용하여 새로운 모델 객체를 추가 할 때 팩토리를 생성하고 테스트를 쉽게 관리하고 유지할 수 있는지 다시 확인하십시오. 단위 테스트의 견고한 세트가 이미있는 경우 Cucumber를 사용하여 상위 수준의 기능 테스트를 작성하여 테스트에서 사용자 스토리를 캡처하고 앱을 끝까지 테스트 해보십시오.
새 프로젝트를 시작하려면 Rspec 및 Factory Girl에서 시작하십시오. Rspec은 Test :: Unit와는 아주 다른 테스트 스타일을 소개 할 것입니다.하지만 여전히 익숙한 단위 테스트를 작성하고 너무 많은 새로운 테스트가 필요없이 테스트에 뛰어들 수있는 스텁, mock 및 matchers를 제공합니다. 귀하의 프로젝트에 보석. Factory Girl은 테스트가 요구할 때 도메인 객체를 작성하는 편리한 방법을 제공합니다. 그 둘 사이에 당신은 평소의 단위 테스팅 워크 플로우로 작업하면서 새로운 테스팅 트릭을 얻을 수 있어야합니다.
좋은 질문입니다. 정말 좋은 답변을 얻을 수 있기를 바랍니다! – Zabba
http://www.opensourcerails.com/에서 Spree 또는 다른 것과 같은 알맞은 크기의 실제 프로젝트를 선택하고 앱에서 테스트를 이해하려고 시도하십시오. 물론 테스트의 일부를 이해하려면 실제 출처를 조사해야합니다. IMHO, 이것은 일반적인 레일에서도 더 잘 될 수있는 좋은 방법입니다. – Zabba