Cay Horstmann

停下來,自動化吧#

作者曾見過程式設計師為了統計模組的程式碼行數,每週都把檔案貼進文書處理器,手動使用「行數計算」功能。他也參與過需要多次滑鼠點擊的繁瑣部署流程。後來有人將其自動化,腳本在最終測試中被執行了數百次,遠超預期——而且運作良好。

那麼,為什麼人們寧願反覆手動執行同樣的任務,卻不願退一步把它自動化?

常見的五大迷思#

迷思一:自動化只適用於測試#

測試自動化當然很好,但為什麼要止步於此?任何專案中都充滿重複性任務:版本控制編譯建構 JAR 檔案文件產生部署報告。對於這些工作,腳本比滑鼠更快且更可靠。

迷思二:我有 IDE,不需要自動化#

你是否曾為「在我機器上可以跑」跟同事爭論?現代 IDE 有數千種設定,要確保所有團隊成員的配置完全一致幾乎不可能。像 AntAutotools 這類建構自動化系統能提供你所需的控制力和可重複性。

迷思三:我需要學習特殊工具才能自動化#

使用一個像樣的 shell 語言(如 bashPowerShell)加上建構自動化系統就能走很遠。如果需要與網站互動,可以使用 iMacrosSelenium 等工具。

迷思四:檔案格式太複雜,無法自動化#

如果流程中涉及 Word 文件、試算表或圖片,自動化確實較具挑戰性。但這真的有必要嗎?能否改用純文字、CSV 或 XML?通常只需稍微調整流程,就能在大幅降低繁瑣度的同時獲得良好結果。

迷思五:我沒有時間去搞清楚怎麼做#

你不需要先學會所有 bash 或 Ant 的知識才開始。邊做邊學,只要學到足夠完成任務的工具知識即可。而且在專案早期投入自動化,通常更容易找到時間。

一旦你成功展示了自動化的價值,你(和你的老闆)都會看到投資自動化是值得的。