因此,讓我們進一步調查圍繞自動化測試的問題領域,看看怎么做才能改善這種情況:
。 廉價的測試沒什么價值。
一個問題是,單元測試是成本很低的自動化測試類型,一般來說它比其他的測試類型帶來的價值更低。單元測試仍然是一種不錯的測試類型,但是人工測試可能被認為會在實踐中暴露更多的bug。可能就會感覺寫單元測試沒什么必要了。
。 很難去創建和自動化集成測試相關的測試支架( test cradle)。雖然實現單元測試的測試支架或者測試夾具( test fixture)不是很困難,但是將其
變得更像產品環境會越來越困難。這可能是因為缺乏硬件資源、許可證、人力等。
。 程序的功能隨時間而變化,而測試必須做出相應的調整,耗費時間和精力。
這使得自動化測試好像只是讓軟件開發變得更困難而沒有感覺到什么收益。
在開發和運維關系不是很緊密,或者說非面向DevOps的企業中,尤其如此。如果有其他人不得不處理你那些不能正常工作的爛代碼,那么對于開發人員來說寫點爛代碼根本無關緊要。這不是一個健康的關系。這也是DevOps想要解決的最核心的問題。DevOps的方式證明了這條已重復數次的規則:幫助不同角色的人們緊密工作在一起。在像Netflix這樣的企業中,一個敏捷團隊對自己服務的成功、維護及中斷負有全部責任。