2010-12-15 7 views
1

레일을 처음 사용하기 때문에 최근 레일에서 제공되는 TDD 라이브러리가 RSpec과 호환되지 않는다는 점을 인터넷에서 읽었습니다 (RSpec과 호환되지 않습니다). 테스트를 수행하는 데 적합한 도구입니다.레일에서의 올바른 테스트 방법

내 질문은 이것이 진실이라면 레일을 테스트하기위한 올바른 도구는 무엇입니까? 레일 TDD 또는 RSpec은 무엇입니까? 아니면이 두 가지 도구가 다른 용도로 사용됩니까?

설명해 주셔서 감사합니다.

답변

2

TDD는 테스트 기반 개발을 의미합니다. 그것은 방법론이지 도서관이 아닙니다.

레일은 루비의 Test :: Unit과 함께 제공됩니다. Rspec과 같은 다른 라이브러리로 쉽게 대체 할 수 있습니다.

사용할 도구가있을 때는 "올바른 방법"이 없습니다. 모두 기본 설정에 이릅니다. 저는 개인적으로 Rspec을 선호합니다 ...

+0

내가 TDD 라이브러리라고 말했다 결코, 나는 "TDD 레일 libs와"에 대해 언급, libs와 레일에서 테스트를 수행하는 데 사용 TDD 스타일. 하지만 답에 감사드립니다. – Nisanio

0

RSpec은 순수 루비이며 코드 테스트를 작성하는 가장 좋은 방법입니다. Gem을 사용하여 쉽게 통합 할 수 있으며 작업하기가 쉽습니다.

0

여러 가지 측면에서 레일 및 기타 웹 응용 프로그램을 테스트 할 수있는 많은 도구가 있습니다. 그러나 만약 당신이 처음으로 을 테스트한다면 레일즈 자신의 테스트 프레임 워크을 배우기 시작하기 전에 다른 툴을 사용하기를 권장합니다.

하나의 테스트 프레임 워크를 배우고 나중에 마스터 링하면 장래에 다른 프레임 워크와 함께 장단점을 이해하고 조화롭게 작동하게 할 수 있습니다.

다음과 같은 것들을 테스트를 시작할 수 :

  • 기능 테스트 귀하의 컨트롤러
  • 일정에 대해 알아보기 및 테스트 데이터를로드하는 방법에 대한

    • 단위 테스트 모델을

    나는 많은 실패한 테스트 노력을 보았지만 잘못된 툴/프레임 워크를 선택했기 때문에 실패한 것을 결코 보지 못했습니다. 테스트 도구는 사용하는 도구를 마스터하는 방법을 모르고 테스트에 대한 기본 사항을 충분히 배우기 때문에 실패합니다.

    레일 테스트에 대한 자세한 내용은 여기를 참조하십시오. 수동 테스트에 대한
    http://guides.rubyonrails.org/testing.html

    매뉴얼 나는 그것이 이럴 테스트를 자동화 된 사랑만큼 예비 테스트
    , 대체하지 않습니다. 주된 이유는 자동화 된 사람 만이 말한 것을 수행 할 수 있고 합격/불합격으로 알리는 정보 만 검증하기 때문입니다. 인간은 지능을 사용하여 결함을 찾고 다른 것을 테스트하는 동안 나타나는 질문을 제기 할 수 있습니다.
    여기 내 대답의 또 다른에 자동 및 수동 테스트를 혼합에 대한 자세한 내용 :
    What test methods do you use for developing websites?