簡介
Cucumber是程式設計師用於測試其他軟體的開源軟體工具。它運行以行為驅動開發(BDD)風格編寫的自動驗收測試。BDD方法的核心是其簡單的語言解析器,稱為Gherkin。它允許用客戶可以理解的邏輯語言來指定預期的軟體行為。因此,Cucumber允許執行用面向業務的文本編寫的功能文檔。
Cucumber用Gherkin語法,它是一種用自然語言來定義測試用例。它被設計成非技術人員都可以讀懂的,並且共同描述與軟體系統有關的用例。Gherkin的語法背後的目的是促進整個開發團隊(包括業務分析師和經理)的行為驅動開發實踐。它試圖從企業管理的需求定義的初始階段開始,並在開發生命周期的其他階段執行穩固,明確的需求。
語法
Cucumber的檔案又稱為劇本檔案。所有的劇本檔案都有.feature檔案擴展名。它們包含被測系統的單個功能定義,並且是一個可執行的測試腳本。檔案中的指令是任何非空和非注釋行。它們由一個公認的Gherkin關鍵字和一個字元串組成。
每個Cucumber劇本檔案中描述一個功能(Feature),它細分為場景(Scenario),場景中包含多個順序執行的步驟(Step),即步驟序列。
功能
一個功能是一個用例,描述了正在測試的軟體的特定功能。一個Feature有三個部分:
•該Feature:關鍵字
•功能名稱(與關鍵字在同一行)
•可選的描述信息
示例功能定義:
場景
每個功能都由一組場景組成。單一場景是通過所描述的功能的事件流,並將1:1與系統的可執行測試案例進行映射。與示例ATM取款功能保持一致,情景可能會描述用戶如何請求款項以及他們的帳戶會發生什麼情況。