Chúng tôi đã đến điểm mà chúng tôi đã nhận ra rằng có hai tùy chọn để chỉ định dữ liệu thử nghiệm khi xác định kịch bản CRUD điển hình:Các kịch bản BDD có nên bao gồm dữ liệu thử nghiệm thực tế hay chỉ mô tả nó?
Tùy chọn 1: Mô tả dữ liệu để sử dụng và để thực hiện xác định dữ liệu
Scenario: Create a region
Given I have navigated to the "Create Region" page
And I have typed in a valid name
And I have typed in a valid code
When I click the "Save" button
Then I should be on the "Regions" page
And the page should show the created region details
Phương án 2: rõ ràng nêu dữ liệu thử nghiệm sử dụng
Scenario: Create a region
Given I have navigated to the "Create Region" page
And I have filled out the form as follows
| Label | Value |
| Name | Europe |
| Code | EUR |
When I click the "Save" button
Then I should be on the "Regions" page
And the page should show the following fields
| Name | Code |
| Europe | EUR |
Xét về lợi ích phù hợp và hạn chế, những gì chúng tôi đã thiết lập là:
Tùy chọn 1 độc đáo đề cập đến trường hợp khi định nghĩa nói "thay đổi tên hợp lệ". Điều này có thể khó giải quyết hơn nếu chúng tôi đi với Tùy chọn 2, nơi dữ liệu thử nghiệm ở một vài nơi. Tùy chọn 1 mô tả một cách rõ ràng những gì quan trọng về dữ liệu cho thử nghiệm này, đặc biệt nếu đó là một kịch bản mà chúng tôi đã nói điều gì đó như "đã nhập vào số thẻ tín dụng không hợp lệ". Nó cũng "cảm thấy" trừu tượng hơn và BDD bằng cách nào đó, quan tâm nhiều hơn đến mô tả hơn là thực hiện.
Tuy nhiên, Tùy chọn 1 sử dụng các bước rất cụ thể khó tái sử dụng. Ví dụ: "trang sẽ hiển thị chi tiết vùng được tạo" có thể chỉ được sử dụng bởi trường hợp này. Ngược lại, chúng tôi có thể thực hiện Tùy chọn 2 "trang sẽ hiển thị các trường sau" theo cách có thể sử dụng lại nhiều lần theo các trường hợp khác.
Tôi cũng nghĩ Tùy chọn 2 có vẻ thân thiện với khách hàng hơn, vì họ có thể thấy bằng ví dụ những gì đang xảy ra thay vì phải diễn giải các thuật ngữ trừu tượng hơn như "hợp lệ". Tùy chọn 2 có giòn hơn không? Tái cấu trúc mô hình có thể có nghĩa là phá vỡ các thử nghiệm này, trong khi nếu dữ liệu thử nghiệm được xác định trong mã trình biên dịch sẽ giúp chúng ta thay đổi mô hình.
Tôi đánh giá cao rằng sẽ không có câu trả lời đúng hay sai ở đây, nhưng muốn nghe ý kiến của mọi người về cách họ quyết định nên sử dụng cái gì.
Cảm ơn!
Cheezy blog đẹp và một ý tưởng tuyệt vời, cảm ơn! –
FYI nhà tuyển dụng của tôi đã chặn trang web của bạn do rủi ro bảo mật được cho là. – onedaywhen