2017-05-18 58 views
2

我正在爲大約15個步驟的嚮導編寫一個非常長的集成測試。每個步驟都有大約20個輸入/選擇框。我應該在Capybara整合測試中使用隨機數據嗎?

我開始在我的測試中使用靜態數據,但現在我已經開始編寫諸如從選擇框中選擇一個隨機值之類的東西,然後單擊一個隨機單選按鈕作爲選項。例如,這似乎更像捕捉錯誤;頁面上的其中一個按鈕可能無法正確呈現,因此該值永遠不會保存到數據庫中 - 這絕不會使用每次都選擇相同選項的靜態數據找到。或者,我可以手動寫出所有可能選擇的選項,但這需要一個永恆的時間。

我聽說不使用隨機數據的一個主要原因是您無法明確地看到測試中使用的數據,並且可能會使失敗的測試難以解決。

這是我要走下去的一條路徑嗎?或者正在以這種方式測試通常完成的事情?

回答

1

這本質上是一個質量保證問題,而不是自動化問題。你需要問問你自己和你的團隊是否測試每一個排列甚至值得花時間和精力。通常不是。根據我的經驗,最好是獲取有關嚮導中最常見的用戶旅程的信息,並從此處分支出去。我會首先從自動化的角度解決這些問題,然後轉向更低風險的路線。

我喜歡在開發者確認的某些低風險區域使用隨機數據,這些區域相對來說是不相關的(例如,真/假電臺框),並且您始終可以確保您正確地記錄輸出以捕獲錯誤。

相關問題