Dưa chuột - Kịch bản
Scenariolà một trong những cấu trúc cốt lõi của Gherkin. Mọi kịch bản đều bắt đầu bằng từ khóa “Kịch bản:” (hoặc một kịch bản được bản địa hóa) và theo sau là tiêu đề kịch bản tùy chọn. Mỗi tính năng có thể có một hoặc nhiều kịch bản và mọi kịch bản đều bao gồm một hoặc nhiều bước. Một ví dụ rất đơn giản về kịch bản có thể là:
Scenario - Xác minh chức năng trợ giúp.
Cho phép người dùng điều hướng đến Facebook.
Khi người dùng nhấp vào Trợ giúp, sau đó trang Trợ giúp sẽ mở ra.
Hãy xem xét một trường hợp, trong đó chúng ta cần thực hiện một kịch bản thử nghiệm nhiều lần. Giả sử, chúng ta cần đảm bảo rằng chức năng đăng nhập đang hoạt động cho tất cả các loại chủ sở hữu đăng ký. Điều đó yêu cầu thực hiện kịch bản chức năng đăng nhập nhiều lần. Sao chép, dán các bước tương tự để chỉ thực thi lại mã, có vẻ không phải là một ý tưởng thông minh. Đối với điều này, Gherkin cung cấp thêm một cấu trúc, đó là phác thảo kịch bản.
Đề cương kịch bản tương tự như cấu trúc kịch bản; sự khác biệt duy nhất là cung cấp nhiều đầu vào. Như bạn có thể thấy trong ví dụ sau, trường hợp thử nghiệm vẫn giữ nguyên và không thể lặp lại. Ở phía dưới, chúng tôi đã cung cấp nhiều giá trị đầu vào cho các biến “Tên người dùng” và “Mật khẩu”. Trong khi chạy kiểm tra thực tế, Cucumber sẽ thay thế biến bằng các giá trị đầu vào được cung cấp và nó sẽ thực hiện kiểm tra. Khi pass-1 đã được thực thi, kiểm tra sẽ chạy lại lần lặp thứ hai với một giá trị đầu vào khác. Biến hoặc trình giữ chỗ như vậy có thể được biểu diễn bằng ”<>” trong khi đề cập với các câu lệnh gherkin.
Thí dụ
Scenario Outline- Chức năng đăng nhập cho một trang mạng xã hội. Người dùng nhất định điều hướng đến Facebook.
Khi người dùng đăng nhập bằng Tên người dùng là "<tên người dùng>" và Mật khẩu là "<mật khẩu>", thì đăng nhập sẽ thành công.
| username | password |
| user1 | password1 |
| user2 | password2 |
Có một số mẹo và thủ thuật để xác định thông minh các tình huống Cucumber.
Mỗi bước nên được xác định rõ ràng, để không tạo ra bất kỳ sự nhầm lẫn nào cho người đọc.
Không lặp lại kịch bản thử nghiệm, nếu cần sử dụng phác thảo kịch bản để thực hiện lặp lại.
Phát triển một bước thử nghiệm theo cách mà nó có thể được sử dụng trong nhiều tình huống và phác thảo kịch bản.
Trong chừng mực có thể, hãy giữ cho mỗi bước hoàn toàn độc lập. Ví dụ: “Cho biết người dùng đã đăng nhập”. Điều này có thể được chia thành hai bước
- Cho người dùng nhập tên người dùng.
- Nhấp vào đăng nhập.