「一個測試如果跑得慢,就沒人想每天跑。」——《你就是不寫測試才會沒時間:Kuma的單元測試實戰.Java篇》
你多久跑一次測試?你跑一次測試要多久?
如果每一次按下 Enter 執行測試,你就必須要離開座位,上個廁所、泡杯咖啡、抽兩根煙,才能看到跑完測試後的結果,那還真不能怪你會懶得頻繁執行測試。
畢竟每一次執行都彷彿是自己親手創造了一次時間浪費。
同樣的狀況也不只發生在「測試」,像是環境佈建、程式碼合併、軟體 release、部署、甚至誇張一點只是每次送出 git commit + git push 都會卡卡的花費大量時間,那也還真不能怪當事人會懶得執行這些事情。
幸運的是現代的軟體開發已經不同過往了,我們有了更多方法、手段及工具,可以讓我們「快/順暢」。
我們有了 DevOps,幫助我們察覺軟體開發生命週期中卡住不順暢之處,引入正確的思維,明白為何要「持續/頻繁」的整合及交付,在適當的之處利用自動化工具讓流程可以被更快且順暢的執行。
DevOps 的核心價值之一,正是「快/順暢」,你的軟體開發生命週期卡住了?你的自動化測試跑太久了?你 CI Pipeline 上的 Job 塞車了?你的雲端環境佈建太繁雜了⋯⋯
試著去識別這些影響你們順暢交付價值的瓶頸點,依據優先順序逐一改善吧!