0

私の仕様 (1 つのテストのみ) は、rspec で実行するのに約 40 秒かかりました。私は今スポークを走らせており、それは時間を約17秒に短縮しましたが、それでも1回のテストでは少しばかげているようです. AMD Athlon II X2 250 3.0GHz プロセッサ、Ubuntu 11.04、4GB RAM を使用しています。テストの実行中、プロセッサーは両方のコアで短時間 100% に達したように見えます。これはすべて正常に聞こえますか、それとも何か奇妙なことが起こっていますか?

さらに、Guard を介してこれを実行すると、タイマーがリセットされることはありません。したがって、最初のテストで 17 秒と報告され、次のテストを開始する前に 15 秒待機すると、17 秒後に 2 番目のテストに 49 秒かかったことが報告されます (最初のテストは 17 秒、その間の 15 秒は 2 番目のテストは 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

1 に答える 1

4

Guard または RSpec チームが修正するまで、これでタイマーが修正されます。

Spork.each_run do
  $rspec_start_time = Time.now
end

いいえ、1 回のテストには時間がかかりすぎます。そのコードを使用して、時間がもっと現実的かどうか教えてください。

それでも 10 秒以上かかる場合は、実際のコードで行っていることを模倣してみてください。ブラウザで自分でやってください。コントローラーが応答するのにそんなに時間がかかりますか? たぶん、そこで最適化する必要があります。

そうでない場合は、spec_helper を見せてください。

于 2011-12-13T17:37:00.027 に答える