Là gì Cucumber Định nghĩa tệp & bước tính năng? (Ví dụ)

Đối với mỗi dự án dưa chuột, có một thư mục duy nhất ở thư mục gốc của dự án có tên là “Tính năng, đặc điểm“. Đây là nơi chứa tất cả các tính năng dưa chuột của bạn. Trong thư mục này bạn sẽ tìm thấy các thư mục bổ sung, đó là bước_định nghĩathư mục hỗ trợ

"Tệp tính năng" là gì?

Tệp tính năng chứa mô tả cấp cao về Kịch bản thử nghiệm bằng ngôn ngữ đơn giản. Nó được biết đến như Gherkin. Gherkin là một ngôn ngữ văn bản tiếng Anh đơn giản

Cucumber Tệp tính năng bao gồm các thành phần sau –

  • Đặc tính: Một tính năng sẽ mô tả tập lệnh kiểm thử hiện tại phải được thực thi.
  • Kịch bản: Kịch bản mô tả các bước và kết quả mong đợi cho một trường hợp thử nghiệm cụ thể.
  • Tóm tắt kịch bản: Có thể thực thi cùng một kịch bản cho nhiều bộ dữ liệu bằng cách sử dụng phác thảo kịch bản. Dữ liệu được cung cấp bởi cấu trúc dạng bảng được phân tách bằng (II).
  • Được: Nó chỉ định bối cảnh của văn bản sẽ được thực thi. Bằng cách sử dụng bảng dữ liệu “Đã cho”, bước cũng có thể được tham số hóa.
  • Thời Gian: “Khi” chỉ định hành động kiểm tra phải thực hiện
  • Sau đó: Kết quả mong đợi của bài kiểm tra có thể được biểu thị bằng “Then”

Tiếp theo, chúng ta sẽ học cách viết Feature File trong Cucumber với ví dụ.

Ví dụ về tệp tính năng mẫu:

Feature: Visit career guide page in career.guru99.com
Scenario: Visit career.guru99.com
Given: I am on career.guru99.com
When: I click on career guide menu
Then: I should see career guide page

Cucumber Khái niệm cơ bản

"Định nghĩa bước" là gì?

Định nghĩa bước ánh xạ các Bước kiểm thử trong các tệp tính năng (được giới thiệu bởi Given/When/Then) tới mã. Nó thực thi các bước trên Ứng dụng đang được thử nghiệm và kiểm tra kết quả so với kết quả mong đợi. Để thực thi định nghĩa bước, nó phải khớp với thành phần đã cho trong một tính năng. Định nghĩa bước được xác định trong các tệp Ruby trong “features/step_def địnhs/*_steps.rb”.

Ví dụ về định nghĩa bước: Ở đây chúng ta sẽ sử dụng ở trên Cucumber Ví dụ về Tệp tính năng khi duyệt career.guru99.com Chúng tôi sẽ sử dụng các tính năng như “Khi, Sau đó, Cho” như được hiển thị bên dưới Cucumber Ví dụ về tệp tính năng.

Step 1:

Given (/^ I am on career.guru99.com$/) do

Browser.goto "http://career.guru99.com" -This will visit career.guru99 on browser

end

Step 2:
When (/^ click on career guide menu$/) do

Browser.text (:name, " career guide" ).click – This will click "career guide menu"

end
	
Step 3:

Then (/^ I should see career guide page$/) do

Browser.goto "http://career.guru99.com/category/career-guide/" - It will visit "career guide page"

end

Tổng kết

  • Bạn cần 2 Tệp – Tính năng và Định nghĩa bước để thực hiện kịch bản kiểm thử Dưa chuột
  • Tệp tính năng chứa mô tả cấp cao của Kịch bản thử nghiệm bằng ngôn ngữ đơn giản
  • Tệp Định nghĩa các bước chứa mã thực tế để thực thi Kịch bản thử nghiệm trong tệp Tính năng.