我知道RSpec具有有用的方法「get」和「response.should」來運行集成測試 - 我想知道如何使用這些(或其他的方法來達到同樣的效果)在Rake任務:Rails - 在Rake任務中使用RSpec「get」和「response」方法
desc "Check all content items with type 0 and do something"
task :my_task => :environment do
ContentItem.where("content_type = ?", 0).each do |obj|
get "/my_path/"+obj.value
if (response has a certain html tag)
perform some action on obj
end
end
end
我知道,我不能只運行rspec的方法類似,但這是有效的什麼,我需要做的,我需要能夠處理/my_path/obj.value打開時返回的信息。有沒有人有什麼建議?
我同意Taryn,這將是理想的 - 問題是,信息正在計算出的視圖,所以我不能將其移動到模型。基本上,有些網站在我們嘗試將它們加載到我們網站的框架中時有時會丟幀,並且我們試圖保留數據庫記錄,以確定遠程URL是否啓用了幀清除功能(這就是這個耙子任務應該是這樣的這樣做),以便我們不嘗試加載它們,如果它們被破壞。 – Kvass
所以我試圖運行一個耙子任務,基本上運行一個GET HTTP請求的頁面,試圖框架的網址,然後如果框架被搗毀標記它在數據庫中。 – Kvass
好的 - 我添加了一個編輯功能,可以爲您提供一些示例性的寶石,可以幫助您在途中。祝你好運 - 聽起來像它可能會很棘手,因爲即使net :: http可能實際上不會觸發一個框架。我不知道這會如何爲你顯示。但至少這是一個開始:) –