自動化接受測試
自動化接受測試是從用戶的角度出發來保證測試有效性的一種方法。
Cucumber是一種測試用例以文本寫成并關聯測試代碼的測試框架。這種方式被稱為行為驅動開發(behaVior-driven development)。Cucumber原本是用Ruby實現的,但是現在已經移植到了多種不同的語言。
DevOps的角度來看,Cucumber的吸引力在于它嘗試將不同的角色結合在一起。
Cucumber中feature的定義是用對話的形式實現的,而且不需要任何編程技巧也可以完成。
測試運行所需要的實際數據會從描述中提取出來,用于測試。
這么做的意圖很好,但是實現Cucumber測試的難度并不那么一目了然。盡管語言的行為規范基本上是自由文本,但它們仍然需要簡化和形式化,否則編寫匹配的代碼和從描述中提取數據會變得困難。這使得編寫規范對于最初編寫它們的角色失去了吸引力。之后就會變成程序員去編寫規范,但他們不喜歡冗繁,更傾向于編寫普通的單元測試。
和很多事情一樣,這里的精髓在于合作。只有開發人員和產品負責人一起合作努力編寫規范,Cucumber才能發揮作用。