2011-12-13 3 views
0

내 스펙 (단 1 테스트)은 rspec을 실행하는 데 약 40 초가 걸렸습니다. 나는 지금 뛰고있는 spork를 가지고있다. 그리고 그것은 약 17 초까지 시간을 잘랐다. 그러나 그것은 단지 1 개의 테스트에 대해 조금 우스운 것처럼 보인다. 저는 AMD Athlon II X2 250 3.0GHz 프로세서, Ubuntu 11.04, 4GB RAM을 사용 중입니다. 프로세서는 테스트를 실행하는 동안 잠시 동안 두 코어 모두에 100 % 히트 한 것처럼 보입니다. 이 모든 것이 정상적으로 들리니 아니면 이상한 일이 있습니까?Rspec은 더 빠르지 만 여전히 Spork에서 느림.

또한 Guard를 통해이를 실행하면 타이머가 재설정되지 않습니다. 따라서 첫 번째 테스트는 17 초를보고, 다음 테스트를 시작하기 전에 15 초를 기다리면 17 초 후에 두 번째 테스트에 49 초가 걸렸음을보고합니다 (첫 번째 + 15 회는 17 회, 두 번째 테스트는 17 회). 이게 정상인가?

describe "CompanyCustomers" do 
    it "allows creation of new customers" do 
    visit new_company_customer_path 
    fill_in "company_customer_first_name", :with => "John" 
    fill_in "company_customer_last_name", :with => "Doe" 
    click_button("Save") 
    page.should have_content("John Doe") 
    end 
end 

답변

4

Guard 또는 RSpec 팀에서 수정하기 전까지 타이머를 수정합니다.

Spork.each_run do 
    $rspec_start_time = Time.now 
end 

그리고 한 번만 테스트하면됩니다. 해당 코드를 사용하여 시간이 더 실제적인지 알려주십시오.

아직 10 초가 넘는 경우 코드에서 실제로 수행 한 작업을 모방하려고해야합니다. 브라우저에서 직접 해보십시오. 컨트롤러가 응답하는 데 너무 오랜 시간이 걸립니까? 어쩌면 최적화 할 필요가있을 것입니다.

그렇지 않다면 spec_helper를 보여주세요.

관련 문제