我的ruby on rails網站的特定頁面很慢。爲rails性能測試生成代表性數據
爲了弄清楚是怎麼回事,我想在本地主機上建立這個簡單的測試遵循了這一guide:
class BrowsingTest < ActionDispatch::PerformanceTest
def test_homepage
get '/slow_page'
end
end
在這一點上我的測試數據庫是空的,所以我需要的種子它一些數據。經過幾個小時的各種事情挖掘後,我有點困惑,我不知道我是否應該:
1)以某種方式從生產服務器複製數據並將其粘貼到測試數據庫中(有一個簡單的方法來做到這一點?)
OR
2)生成許多用戶使用測試夾具.yml文件
OR
3)職位將代碼seed.rb生成用戶和帖子。 (我嘗試這樣做,但由於某種原因,我在PerformanceTest運行時產生的內容消失了。
4)我偶然發現了Factory Girl和Faker等一些寶石。我還沒有嘗試過這些,但是從我讀到的內容來看,創建特定情境和狀態似乎更多,而不是產生成千上萬的用戶進行性能測試。
我認爲這將是一個常見的情況,並希望從那些做過這些的人那裏得到一些建議。謝謝。
對於複製生產數據庫來測試,人們只是使用mysqldump? – tstyle 2011-04-26 06:47:29
是的。這是一個很好的做法。 – Elad 2011-04-26 07:49:59