代碼的功能測試通常需要外部資源,例如,一個數據庫。啓動/停止守護進程作爲單元測試的一部分的最佳實踐(使用pytest)
基本上有兩種方法:
- 假設資源(如數據庫)始終運行並隨時可用
- 啓動/停止相關的資源作爲測試的一部分
在Python單元測試(2)的「舊」世界中,可以使用world setUp()和tearDown()方法來控制服務。
隨着py.test世界變得更加複雜,setUp()和tearDown()方法的概念已經被實現燈具的funcarg魔術所取代。 老實說,這種方法被破壞 - 至少作爲setUp/tearDown方法的替代。
在使用py.test的項目中控制服務和資源的推薦方式是什麼?
我們是否應該繼續用setUp/tearDown方法編寫測試(至少在需要的地方)還是有更好的模式?
爲什麼你認爲夾具的方法被打破?你有什麼具體問題? – pfctdayelise