2011-09-09 2 views
1

TL; DR : RSpec :: Matchers를 내 테스트/유닛에서 작동시키는 법을 모르겠다 ./..._ test.rb 테스트가 성공 했나요? 모든 테스트를 spec 폴더로 마이그레이션해야합니까?Ruby on Rails 2.3.8 : 작동 테스트를하는 데 문제가 있습니다


그래서 저는 오이, Test :: Unit을 사용하고 있습니다. 프로젝트를 시작하기 전에 몇 가지 사양 테스트가있었습니다.

내 단위 테스트에 사용할 테스트 프레임 워크를 읽었을 때 RSpec을 발견하고 매우 멋지다고 생각했지만 실제로 알게 될 때까지 실제로 어떤 Rspec도 사용하지 않았습니다. out about_nil/be_whatever 메소드가 있어야합니다. 나는 그것들이 꽤 근사하다고 생각했다.

테스트/(유닛 | 기능) 폴더에서 달라 붙는 테스트가 가장 맘에 들었 기 때문에 ("spec"폴더에서 단위 테스트와 기능 테스트를하는 것이 이상하고 관습에 맞지 않는다고 생각했습니다.) 또한 사용하기 시작했습니다. ~

그러나 최근에 뷰 테스트를 위해 오이를 사용하기 시작했는데 ... 결과적으로 수많은 보석 충돌 문제가 발생했습니다. 팩토리 소녀, 카피 바라 등에서 오이를 사용하는 것은 대단한 번거 로움이었습니다.

결국 나는 bundler로 마이그레이션해야했습니다. 왜냐하면 나는 c ould는 결코 내 환경을 작동시키지 않습니다.

어쨌든, 테스트 환경을 망쳐 버리고 약 일주일이 지난 후, 오이가 작동하고, 기능 테스트가 작동하고, 내가 단위 테스트를하는 것처럼 느껴진다. 내 생각에 솔직하게 사용하지 않았다면. be_valid/be_whateven 메소드.

이 시나리오에서 RSpec :: Matchers를 사용하게 된 사람이 있습니까? GemFile의

관련 부분 : 여기

group :test do 
    gem "cucumber", "~>0.10.3" 
    gem "cucumber-rails", "0.3.2" 
    gem "launchy" 
    gem "hpricot" 
    gem "gherkin", "~>2.4.0" 

    gem "capybara", "0.4.1.2" 
    gem "rspec", "~> 1.3.2" 
    gem "rack" 
    gem "rspec-rails", "~> 1.3.3" 

    gem "webrat", "0.7.0" 
    gem "database_cleaner" 

    gem "factory_girl", "2.1" 
    gem "shoulda", :require => nil 
    gem "shoulda-matchers", :git => "https://github.com/thoughtbot/shoulda-matchers" 
    gem "awesome_print" 
    gem "cobravsmongoose" 
end 

답변

0

는 인 링크 : 이 the rspec expectations page talking about integration with Test::Unit

오이, RSpec에 테스트 :: 유닛 테스트와 나의 경험은 모든 약이라고 생각하는 날 리드 너가 적용을 얻는 한 안락. 나는 rspec 테스트보다 훨씬 더 좋아. 테스트 유닛에 익숙하지 않다면 rspec을 시도하십시오. 나는 또한 오이를 사용하고 rspec을 모두 건너 뛰는 (그러나 이것은 약간의 "종교적인"토론에 들어갈 수있다) 사람들을 알고있다.