2009-08-16 26 views
6

Tôi muốn sử dụng tính năng quay lại vai trò khi viết thẻ có vẻ như không tồn tại.Tính năng [Rollback] trong Nunit ở đâu?

Tôi đang sử dụng nunit 2.5.0

tôi chỉ sử dụng nunit.framework.dll

Tôi có cần phải thêm một số .dll khác?

Cũng có ai biết làm thế nào tôi thực sự có được nunit để kết nối với một cơ sở dữ liệu sql sever trong một ứng dụng asp.net?

Tôi không chắc chắn nên đặt chuỗi kết nối của mình ở đâu.

+0

Xem câu hỏi này cho một http://stackoverflow.com/questions/321180/how-do-i-test-database-related-code-with-nunit –

Trả lời

1

Không có thuộc tính như vậy trong 2.5 (xem here để biết danh sách thuộc tính được hỗ trợ). Đọc here để biết cách tiếp cận DIY.

+0

Hmm Tôi đoán tôi đã bỏ lỡ đọc nó hoặc điều gì đó tôi nghĩ Tôi đọc rằng nó đã có nó. – chobo2

+3

@ chobo2 - Nó được ghi nhận là chức năng tồn tại trong "The Art of Unit Testing" của Roy Osherove (B.4.2) –

2

Chủ đề cũ, nhưng tôi nghĩ tôi muốn chia sẻ để tham khảo trong tương lai.

Theo như tôi có thể biết, không có thuộc tính gốc [Rollback]. Tuy nhiên, bạn có thể viết riêng của bạn khá dễ dàng:

This blog post cho thấy làm thế nào để viết một thuộc tính tùy chỉnh rollback cho NUnit, do đó bạn có thể viết [Test, Rollback] vào đầu mỗi bài kiểm tra (hoặc ở đầu TestFixture nếu bạn thích).

Khá đơn giản và sử dụng System.Transaction.TransactionScope() để làm thịt.

Tất nhiên, bạn luôn có thể sử dụng TransactionScope() trong SetUp/TearDown để thực hiện điều tương tự, xem câu trả lời được chấp nhận cho this question.

Các vấn đề liên quan