Nếu bạn mới bắt đầu sử dụng phân tích mã, bạn có thể nhầm lẫn các triệu chứng. Bạn đang nhìn thấy: e phân tích 1. Mã mất một số lượng đáng kể thời gian, và 2. Trong phân tích mã, dự án xây dựng
Bạn có thể kết hợp hai triệu chứng này và đạt kết luận rằng phân tích mã được buộc một xây dựng lại dự án của bạn. Đây sẽ là một giả định sai lầm. Hãy thử điều này:
- Đảm bảo rằng dự án của bạn được cấu hình để không phân tích mã chạy khi xây dựng
- Rebuild giải pháp của bạn. Lưu ý phải mất bao lâu
- Build (không xây dựng lại) giải pháp của bạn, nhưng lần này, lưu ý phải mất bao lâu
Bạn sẽ thấy rằng giải pháp của bạn thực sự "xây dựng", nhưng kể từ khi các dự án được cập nhật, các trình biên dịch và các công cụ khác không chạy. Vì vậy, đúng là phân tích mã chạy xây dựng giải pháp của bạn trước tiên, nhưng nó sẽ là một bản dựng như # 3 ở trên - không có gì thay đổi, do đó các công cụ sẽ không chạy. Chỉ có công cụ phân tích mã (FxCop) mới chạy được. Điều này mất nhiều thời gian hơn bạn có thể mong đợi, nhưng nó có giá trị nó.
Trong môi trường của chúng tôi, tôi đã tạo một giải pháp "Địa phương" và cấu hình dự án, được sao chép từ "Gỡ lỗi". Cấu hình này chủ yếu giống như "Gỡ lỗi", nhưng không chạy phân tích mã. Đây là những gì các nhà phát triển của chúng tôi sử dụng trên cơ sở hàng ngày. Khi mã được kiểm tra vào TFS, nó bắt đầu xây dựng Continuous Integration (CI) trong cấu hình "Local", một lần nữa, không cần phân tích mã.
Mặt khác, bản dựng hàng đêm chạy cấu hình "Gỡ lỗi", vì vậy nó chạy phân tích mã. Tôi thấy rằng chúng tôi không cần kết quả phân tích mã trên mọi công trình xây dựng, nhưng nó cũng rất cần thiết mỗi ngày một lần.
OBTW, Phân tích mã không phải là mới. Nếu bạn nhìn vào trang MSDN mà bạn đã liên kết, bạn sẽ tìm thấy phiên bản 2010 của trang trong danh sách thả xuống "Các phiên bản khác". Trong thực tế, tính năng phân tích mã có sẵn như là một bổ trợ Visual Studio được gọi là "FxCop", trước khi nó trở thành một phần của sản phẩm.
Nguồn
2013-08-31 03:48:39
Khá chắc chắn việc xây dựng lại là phân tích mã tĩnh đang chạy. –