2012-08-27 29 views
5

Tôi muốn viết một bài kiểm tra đơn vị để phát hiện một ngoại lệ ném. Sử dụng ExpectedExceptionAttribute, tôi chạy thử nghiệm từ bên trong MSVS và khi TestMethod nhấn ngoại lệ, trình gỡ lỗi phá vỡ ngoại lệ nhưng TestMethod bỏ qua chính xác và báo cáo Đã qua.Ngăn chặn VS C# Đơn vị kiểm tra vi phạm về ngoại lệ

Có một lá cờ nào yêu cầu VS không phá vỡ trong khi kiểm tra đơn vị không?

Trả lời

11

Không chạy thử nghiệm trong phiên gỡ lỗi. Bạn có tùy chọn 'Run Selection' hoặc 'Debug selection', chọn tùy chọn đầu tiên và bạn nên ổn.

+0

@Jake Sử dụng ctrl + F5 trong kịch bản này, giống như chạy phép chọn (không gỡ lỗi) – ChrisBint

+0

Có, tôi nhận ra CTRL của tôi không hoạt động! Vì vậy, tôi đã xóa nhận xét trước đó của mình. Sau khi đọc câu trả lời của bạn, tôi tìm thấy menu "Test", vì vậy tôi nghĩ rằng tôi đã phải chạy từ đó. Cảm ơn. – Jake

4

Nếu bạn nhấn CTRL + ALT + E, bạn có thể định cấu hình trình gỡ rối sẽ ngắt khi các loại ngoại lệ khác nhau được ném và/hoặc không được xử lý.

Tôi đã thấy việc sử dụng các cài đặt này rất tiện dụng vào các thời điểm.

+0

Có rất nhiều tùy chọn (hộp kiểm) trên hộp thoại đó (Gỡ lỗi: Ngoại lệ). Tôi đã phát hiện ra rằng tôi chỉ cần bỏ chọn hộp thoại (cột) Ngôn ngữ chung (ngoại lệ). Tôi đồng ý rằng một tùy chọn khác là chạy mà không có trình gỡ rối, nhưng đôi khi bạn muốn chạy với trình gỡ rối vì một lý do nào đó. Vì vậy, đây là một lựa chọn tốt khi bạn cần sử dụng trình gỡ rối và không muốn phá vỡ các ngoại lệ cơ hội đầu tiên. – steve

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