2013-01-09 37 views
7

Tôi đang làm thử nghiệm đơn vị. Tôi không có ý tưởng rằng làm thế nào để kiểm tra đơn vị global.asax trong asp.net. Global.asax trong asp.net có nằm trong phạm vi kiểm tra đơn vị không? Ngoài ra còn có lớp trình cài đặt ứng dụng có chứa các biến hệ thống. Tôi có nên kiểm tra chúng không?Chúng tôi có thể kiểm tra đơn vị global.asax trong asp.net không?

+0

& Trình cài đặt ứng dụng là gì? công cộng void Cài đặt (Castle.Windsor.IWindsorContainer container, Castle.MicroKernel.SubSystems.Configuration.IConfigurationStore cửa hàng) {// something} –

+0

Bạn có thể gửi một mẫu mã? – Buzzer

Trả lời

5

Bạn có thể. Nhưng bạn không nên. Một bài kiểm tra đơn vị, như tên cho thấy, các đơn vị kiểm tra. Mã trong global.asax hoặc trong cấu hình hệ thống của bạn không phải là một đơn vị. Các bài kiểm tra cho những điều này sẽ được thực sự chặt chẽ cùng với mã và sẽ luôn luôn cung cấp cho bạn sai thất bại khi bạn thay đổi một điều không thích hợp để nó không có giá trị nó. Có các cấp độ khác trong thử nghiệm ứng dụng, nơi nó trở nên có liên quan: thử nghiệm tích hợp, tự động hóa vv Bạn không nên đặt mọi thứ vào 'kiểm tra đơn vị', chỉ được xác định rõ, các phần đơn lẻ. Ví dụ. bạn không đơn vị kiểm tra cấu hình web.config hoặc DI container của bạn quá, nhưng bạn kiểm tra chúng trên một cấp độ khác.

6

Quan điểm của tôi về điều này là bạn không cần phải kiểm tra đơn vị mã trong global.asax của mình.

Lý do chính là không nên có nhiều hơn trong đó so với khai báo và mã dây. Như Peter Porfy đã nói, mã đó nên được kiểm tra trong các bài kiểm tra tích hợp.

Nếu bạn tìm thấy bất kỳ lô-gic nào có giá trị thử nghiệm đơn vị trong global.asax của bạn, bạn có thể nên tính toán nó ra và kiểm tra các lớp đó một cách riêng biệt.