2008-10-22 35 views
6

Câu hỏiMSTest có thể chạy một phương thức cụ thể mỗi lần khởi động không?

Có cách nào để có một phương pháp mà sẽ luôn chạy bất cứ lúc nào mà lắp ráp thử nghiệm được chạy qua MSTest?

Tương tự như cách các thuộc tính [TestInitialize] và [ClassInitialize] hoạt động, nhưng đối với toàn bộ hội đồng. Tôi không muốn phải thêm mã vào phương thức [ClassInitialize] của mỗi lớp thử nghiệm.

Một số thử nghiệm của tôi tương tác với cơ sở dữ liệu. Họ xóa dữ liệu và những thứ khác sẽ rất có hại cho cơ sở dữ liệu sản xuất. Chỉ có một tệp cấu hình cho biết dự án thử nghiệm đơn vị của tôi chạy trên cơ sở dữ liệu không sản xuất.

tôi sẽ cảm thấy tốt hơn nếu có một phương pháp mà có thể chạy khi khởi động mà có thể nói "Được rồi Database name không phải là 'sản xuất'"

Ý tưởng

Log4Net sử dụng một thuộc tính lắp ráp cấu hình riêng của mình .

using log4net.Config; 
[assembly: XmlConfigurator()] 

Có lẽ tôi có thể làm điều gì đó simliar?

[assembly: CheckDatabaseNameNot("production")] 

Trả lời

6

Bạn đã thử [AssemblyInitialize] chưa?

+0

Tôi nghĩ rằng tôi đã tìm một thuộc tính như vậy, nhưng than ôi, điều đó có hiệu quả. Tôi có thể ném một ngoại lệ từ phương thức nếu kiểm tra saftey cơ sở dữ liệu không thành công. – quip

+0

Tôi nghĩ bạn đã nói đùa lúc đầu khi tôi đọc câu trả lời của bạn - bởi vì tôi chắc chắn rằng tôi đã tìm nó trước khi đặt câu hỏi của tôi! – quip

+1

Lol, vâng, chúng tôi đã có tất cả trước đó. –

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