Đây là một ví dụ về một trong các bài kiểm tra chấp nhận của chúng tôi:Làm thế nào để bạn truy cập tính năng chống mẫu mã BDD trong luồng không?
Feature: Add an effect to a level
In order to create a configuration
As a user
I want to be able to add effects to a level
Scenario: Add a new valve effect to a level
Given I have created a level named LEVEL123 with description fooDescription
And I am on the configuration page
When I click LEVEL123 in the level tree
And I expand the panel named Editor Panel
And I click the Add Valve Effect button
And the popup named ASRAddVal appears
And I click the Add new button
And I fill in these vertical fields
| field name | value |
| Name | Effect123 |
Then I should see the following texts on the screen
| text |
| Effect added : EFFECT123 |
Chúng tôi cảm thấy rằng đây là nhận được một chút là Verbose và chúng tôi muốn nghe cách bạn giảm bước trong Specflow. Từ những gì tôi đã đọc cho đến nay, việc tạo các bước không thể tái sử dụng cụ thể không được khuyến khích, vì vậy những gì được coi là "thực hành tốt nhất" khi thực hiện điều này trong SpecFlow?
Cập nhật:
Những gì tôi đang cố gắng để nói là tôi đã học được rằng bạn nên cố gắng tạo ra bước chung để tái sử dụng chúng trên nhiều bài kiểm tra. Một cách để làm điều đó là tham số hóa các bước của bạn, ví dụ: "Với tôi đã tạo một cấp có tên ..", nhưng việc tham số hóa cũng giới thiệu độ dài. Tôi muốn kết thúc với một cái gì đó như Bryan Oakley cho thấy trong câu trả lời của mình, nhưng tôi chỉ không thể nhìn thấy làm thế nào tôi có thể làm điều đó mà không tạo ra các bước rất cụ thể cho mỗi bài kiểm tra. Điều này một lần nữa có nghĩa là tôi sẽ kết thúc với rất nhiều bước làm giảm khả năng bảo trì. Tôi có vẻ như SpecFlow có một số cách để xác định các bước viết tắt bằng cách tạo một tệp kế thừa một lớp cơ sở có tên là "Steps", nhưng điều này vẫn giới thiệu các bước mới.
Vì vậy, để tóm tắt mọi thứ; cho tôi thấy một cách tiếp cận tốt để kết thúc với Bryan Oakleys câu trả lời có thể duy trì được.
Ok, nhưng làm cách nào để bạn thực hiện các bước trở nên rất cụ thể? Từ những gì tôi đã hiểu cho đến nay, bạn nên tránh các bước thử nghiệm cụ thể. – Marius
@Marius: Tôi không hiểu câu hỏi của bạn. Đương nhiên, _something_ phải là duy nhất cho thử nghiệm - chẳng hạn như "Khi tôi thêm hiệu ứng van mới với các giá trị sau". Nếu không có gì độc đáo, sẽ không có điểm nào cho bài kiểm tra. Mặt khác, mỗi bước trong số đó có thể được sử dụng trong các thử nghiệm khác. Ví dụ: "cho trước tôi đã tạo cấp độ mới ... khi tôi xóa cấp mới ...". Hoặc, "Khi tôi thêm mới một hiệu ứng van mới ... sau đó tôi sẽ nhận được lỗi" tên trường không hợp lệ ", v.v. –
Tôi đã cố gắng giải thích vấn đề của mình chi tiết hơn, xem phần cập nhật câu hỏi. – Marius