- Cucumber 教程
- Cucumber - 首頁
- Cucumber - 概述
- Cucumber - 環境
- Cucumber - Gherkins
- Cucumber - 特性
- Cucumber - 場景
- Cucumber - 註解
- Cucumber - 場景大綱
- Cucumber - 標籤
- Cucumber - 資料表
- Cucumber - 註釋
- Cucumber - 鉤子
- Cucumber - 命令列選項
- Cucumber - JUnit 執行器
- Cucumber - 報告
- Cucumber - 除錯
- Cucumber - Java 測試
- Cucumber - Ruby 測試
- Cucumber 有用資源
- Cucumber - 快速指南
- Cucumber - 有用資源
- Cucumber - 討論
Cucumber - 場景
場景是 Gherkin 核心結構之一。每個場景都以關鍵字“Scenario:”(或本地化版本)開頭,後跟可選的場景標題。每個特性可以包含一個或多個場景,每個場景包含一個或多個步驟。一個非常簡單的場景示例如下:
場景 - 驗證幫助功能。
給定使用者導航到 Facebook。
當用戶點選幫助時,幫助頁面開啟。
考慮一種情況,我們需要多次執行測試場景。假設,我們需要確保登入功能對所有型別的訂閱者都可用。這需要多次執行登入功能場景。為了重新執行程式碼而複製貼上相同的步驟,似乎不是一個明智的想法。為此,Gherkin 提供了另一種結構,即場景大綱。
場景大綱類似於場景結構;唯一的區別是提供了多個輸入。如以下示例所示,測試用例保持不變且不可重複。在底部,我們為變數“使用者名稱”和“密碼”提供了多個輸入值。在執行實際測試時,Cucumber 將用提供的輸入值替換變數,並執行測試。執行完第 1 次傳遞後,測試將使用另一個輸入值重新執行以進行第二次迭代。此類變數或佔位符可以使用“<>”在提及 Gherkin 語句時表示。
示例
場景大綱 - 社交網站的登入功能。給定的使用者導航到 Facebook。
當用戶使用使用者名稱“<username>”和密碼“<password>”登入時,登入應成功。
| username | password | | user1 | password1 | | user2 | password2 |
有一些技巧和竅門可以巧妙地定義 Cucumber 場景。
每個步驟都應明確定義,以免給讀者造成任何混淆。
如果需要,不要重複測試場景,請使用場景大綱來實現重複。
以一種可以在多個場景和場景大綱中使用的方式開發測試步驟。
儘可能使每個步驟完全獨立。例如:“給定使用者已登入”。這可以分為兩個步驟
- 給定使用者輸入使用者名稱。
- 點選登入。
廣告