本節書摘來自異步社群《cucumber:行為驅動開發指南》一書中的第2章,第2.9節,作者:【英】matt wynne , 【挪】aslak hellesy著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
在本章中我們快速浏覽了許多不同的内容,所有這些内容都會在後面再次詳細介紹,現在來做一個簡單的小結并強調幾個最重要的地方。
2.9.1 目錄結構
cucumber希望你用約定的目錄結構來存儲特性和步驟定義:
如果你真的需要,也可以傳遞參數給cucumber,進而改變預設結構,優先使用自己指定的目錄結構,但這種按約定存儲檔案的方法是最簡單的。
2.9.2 小步前進
在我們慢慢推進這個例子的程序中,你是否注意到我們多久運作一次cucumber?
關于使用cucumber由外向内開發這種方式,有一點我們非常喜愛,就是它能幫助我們保持注意力集中,我們可以讓 cucumber 指導自己一步步向前,直到完成工作,讓我們把精力集中在如何建立一個優雅的解決方案上。每做一處修改都運作一次cucumber,就能快速發現引入的錯誤并立刻修複,有關整個工作的進展,我們也得到了大量的回報和激勵。
2.9.3 gherkin
cucumber測試通過名為gherkin的文法描述,gherkin檔案是使用.feature擴充名的簡單文本檔案。我們将在第3章中進一步介紹gherkin。
2.9.4 步驟定義
步驟定義是cucumber測試和待測應用程式之間的ruby“粘合劑”,當所有元素一起工作時,整個情形如圖2-1所示。
你會在第4章中學到更多關于步驟定義的内容。
經過這個短暫的cucumber特性旅程之後,我們将放慢速度并逐漸深入。我們将在接下來的幾章中一層一層地介紹每個主題,首先從用來編寫cucumber特性的語言——gherkin開始。
嘗試一下
看看自己是否能用本章開頭的另外一個執行個體來添加第二個特性,即division.feature,你需要修改解決方案以使該特性通過嗎?