- Cucumber 教程
- Cucumber - 首頁
- Cucumber - 概述
- Cucumber - 環境
- Cucumber - 黃瓜語言
- Cucumber - 特性
- Cucumber - 場景
- Cucumber - 註解
- Cucumber - 場景大綱
- Cucumber - 標籤
- Cucumber - 資料表
- Cucumber - 註釋
- Cucumber - 鉤子
- Cucumber - 命令列選項
- Cucumber - JUnit 執行器
- Cucumber - 報告
- Cucumber - 除錯
- Cucumber - Java 測試
- Cucumber - Ruby 測試
- Cucumber 有用資源
- Cucumber - 快速指南
- Cucumber - 有用資源
- Cucumber - 討論
Cucumber - 黃瓜語言
到目前為止,我們已經瞭解了 Cucumber 及其功能。它執行在特性檔案(將在後續章節中介紹)中定義的測試指令碼。這種可執行特性檔案所使用的語言稱為Gherkin。Gherkin 是一種純英文文字語言,它幫助 Cucumber 工具解釋和執行測試指令碼。
有人可能會想,我們已經多次討論過 Cucumber 支援簡單的英文文字,那麼為什麼我們還需要一種單獨的語言 - Gherkin 呢?答案在於行為驅動開發的概念。
如前所述,我們已經看到 BDD 在建立測試指令碼時融合了不同的視角。它可以是開發視角、業務視角等。也就是說,在開發測試指令碼時,我們需要來自不同領域的專業人士,例如開發人員、專案經理、產品負責人和測試人員。由於這些人不屬於同一類別,因此存在不使用通用語言進行測試指令碼概念化的風險。這就是 Gherkin 誕生的原因。
Gherkin 提供了一套用英文文字表示的通用關鍵字,不同領域的人員都可以使用這些關鍵字,並獲得相同的測試指令碼輸出。
示例
特性 - 社交網路網站的登入功能。假設 我是一個社交網路網站使用者。當 我輸入使用者名稱為 username1。並且 我輸入密碼為 password1。那麼 我應該被重定向到網站的首頁。
上述場景是名為使用者登入的功能。所有以粗體突出顯示的詞語都是 Gherkin 關鍵字。
其他一些關鍵字的示例 -
- 背景
- 但是
- *
- 場景大綱
- 示例
Gherkin 將解析在步驟定義檔案(稍後介紹)中編寫的每個步驟。因此,特性檔案中提到的步驟和步驟定義檔案(稍後介紹)中的步驟應該匹配。
您可以在 Package Explorer 中的 Maven 依賴項資料夾中找到 Gherkin jar 包。它會與其他 Cucumber jar 包一起下載。它看起來像下面的截圖 -
關於 Gherkin 另一個有趣的事實是,它不僅支援英語,還支援許多其他本地語言,例如法語、芬蘭語、印尼語、匈牙利語、印地語、烏爾都語、古吉拉特語等。