我面臨的情況是,我想確保如果方法被修改,它不會超過X毫秒的運行時間(本質上,如果該函數速度較慢,它會減慢速度我們網頁上的搜索結果,並且對銷售產生不利影響)。在單元測試中使用所用的時間作爲斷言
我們有單元測試(特別是代碼是在python下完成的,我們使用py.test),第一個想法是斷言如果函數沒有在小於X毫秒內執行,那麼將測試標記爲失敗(或發出警告)。
但是,這感覺很危險(例如,並非所有計算機的速度都是相同的),而且我也不太確定這是單元測試的工作。
有人遇到過類似的情況嗎?對我而言,速度是一項功能,而且我希望確保隨着代碼的發展將來這種功能不會丟失。
如果單元測試不是答案,那麼您會推薦哪些其他選擇?
感謝
是的,我們做了一個專門的測試服務器,但是,我們也鼓勵開發人員在他們的機器上運行測試,我不希望他們認爲他們打破了發佈,只是因爲他們的機器有點加載。雖然如你所說,可重複性似乎是一個好主意。謝謝。 –