- Go語言精進之路:從新手到高手的編程思想、方法和技巧(2)
- 白明
- 377字
- 2022-01-04 17:42:21
第43條
使用testdata管理測試依賴的外部數據文件
在第41條中,我們提到過測試固件的建立與銷毀。測試固件是Go測試執行所需的上下文環境,其中測試依賴的外部數據文件就是一種常見的測試固件(可以理解為靜態測試固件,因為無須在測試代碼中為其單獨編寫固件的創建和清理輔助函數)。在一些包含文件I/O的包的測試中,我們經常需要從外部數據文件中加載數據或向外部文件寫入結果數據以滿足測試固件的需求。
在其他主流編程語言中,如何管理測試依賴的外部數據文件往往是由程序員自行決定的,但Go語言是一門面向軟件工程的語言。從工程化的角度出發,Go的設計者們將一些在傳統語言中由程序員自身習慣決定的事情一一規范化了,這樣可以最大限度地提升程序員間的協作效率。而對測試依賴的外部數據文件的管理就是Go語言在這方面的一個典型例子。在本條中,我們就來看看Go管理測試依賴的外部數據文件所采用的一些慣例和最佳實踐。