+1 để giới thiệu của mọi người về SpecFlow cho các tình huống; không bao giờ sử dụng nó nhưng nghe nhiều điều tốt về nó. Tôi đã sử dụng đồng bằng NUnit với một DSL nhỏ như this. MSTest sẽ hoạt động tương tự.
Bạn có thể cũng làm BDD trong không gian đơn vị, đó là những gì MSpec được thiết kế để thực hiện. Cá nhân tôi ghét MSpec, nhưng phần còn lại của đội ở đây thích nó. Họ thích viết các ví dụ về cách mã hoạt động. Tôi thích cho thấy lý do tại sao hành vi này có giá trị. Đó là một sự phân biệt tinh tế và nếu bạn không lo lắng về việc làm điều này ở cấp độ đơn vị nó sẽ không đánh bạn.
Các khung công tác khác để xem xét bao gồm Concordion, Fitnesse.NET (vui lòng đặt FitSharp phía sau!) Và TickSpec.
Trong thế giới thực, bit có giá trị nhất của BDD theo một chặng đường dài là các cuộc hội thoại , không phải là các thử nghiệm tự động. Dưới đây là một số gợi ý nhanh và mẹo để làm cho nó hoạt động:
Không viết kiểm tra tự động về những thứ có thông lượng. Nó chỉ cam kết bạn để công cụ bạn đã sai. Chờ cho đến khi giao diện người dùng đã giải quyết một chút rồi làm điều đó.
Nếu bạn không quan tâm nhiều đến giao diện người dùng, nhưng hãy quan tâm đến tính toàn vẹn của dữ liệu, hãy viết kịch bản trên lớp bộ điều khiển/người trình bày (ví dụ: cho màn hình quản trị).
Không bắt đầu bằng thông tin đăng nhập. Bắt đầu bằng cách mô tả một phần có giá trị của ứng dụng mà bạn có thể đăng nhập. Thực hiện điều đó trước tiên (giả sử bạn chỉ có một người dùng). Bạn sẽ nhận được phản hồi nhanh hơn về các bit nguy hiểm.
Tìm kiếm phản hồi nhanh về các bit nguy hiểm, thường sẽ là các bit mà bạn chưa bao giờ thực hiện trước đây. Sử dụng các tình huống để có cuộc trò chuyện xung quanh họ. Viết bất cứ điều gì thú vị bạn khám phá ra, nhưng quên các kịch bản rõ ràng - chúng rõ ràng! Đừng lo lắng về việc tự động hóa chúng để bắt đầu. Có cuộc hội thoại quan trọng hơn việc viết ra các cuộc hội thoại quan trọng hơn là tự động hóa các cuộc hội thoại.
Chúc may mắn! Nếu bạn muốn biết thêm về BDD, tôi đặt cùng một trang liên kết có liên quan here.
Cảm ơn bạn Haris, nhưng bất kỳ ai cũng có thể Google và trả lại các liên kết bài viết. Tôi hy vọng sẽ nghe một số kinh nghiệm chuyên môn từ các nhà phát triển và những gì họ biết về các khuôn khổ này.Nếu bạn biết thêm về SpecFlow, vui lòng cho tôi biết. –
Tôi không thể giới thiệu SpecFlow và WatiN đủ, một sự kết hợp tuyệt vời! –