2009-04-16 26 views
14

Tôi vừa nâng cấp lên Resharper 4.5 và bây giờ thấy rằng tất cả các phương pháp kiểm tra BDDish của tôi được đánh dấu là không phù hợp với tiêu chuẩn đặt tên. Quy ước đặt tên của tôi giống như sau:Cách sử dụng kiểu đặt tên bdd bằng Resharper 4.5?

public void Something_ShouldHaveThisResult() 

Trình chia sẻ lại không thích dấu gạch dưới trong phương thức. Có cách nào để tắt tính năng này, chỉ cho phương pháp thử nghiệm không? Tôi có một quy ước đặt tên thông thường cho phần còn lại của mã của tôi.

Trả lời

0

Trên menu:

Resharper | Tùy chọn -> Ngôn ngữ -> Chung -> Kiểu đặt tên: loại bỏ kiểu bao giờ đặt tên bạn muốn. Họ nên có một tính năng "vô hiệu hóa", nhưng họ không có.

+7

Tôi muốn thực thi nó cho mọi thứ ngoại trừ phương pháp thử nghiệm mặc dù . Nếu tôi xóa kiểu đặt tên, nó sẽ vô hiệu hóa nó cho tất cả các phương thức, đúng không? –

+0

Bạn có thể đúng. Đây là công cụ mới để Resharper để họ có thể cập nhật nó sớm. – CLaRGe

1

Bạn có thể sử dụng Agent Smith để biết các quy ước đặt tên mã chính xác hơn.

Lưu ý: phiên bản cho R # 4.5 cuối cùng dường như chưa được biên soạn ... nhưng tôi chắc chắn nó sẽ sớm có.

+0

+1 cho một trình cắm tuyệt vời; dường như có lỗi liên quan đến cài đặt cụ thể này, mặc dù: http://code.google.com/p/agentsmithplugin/issues/detail?id=94 – TrueWill

2

Bạn có thể sử dụng

// ReSharper vô hiệu hóa InconsistentNaming

// ReSharper khôi phục InconsistentNaming

quanh tứ chi của từng loại. ví dụ:

// ReSharper disable InconsistentNaming 
namespace bob 
{ 
    [TestClass] 
    public class MyTestClass 
    { 
     [TestMethod] 
     public void Test_Test() 
     { 
     } 
    } 
} 
// ReSharper restore InconsistentNaming 

Tuy nhiên, điều này sẽ loại bỏ tất cả cảnh báo đặt tên chứ không phải chỉ các tên phương pháp.

4

Nếu bạn muốn làm theo hướng dẫn kiểu Microsoft với các nguồn mã không kiểm tra của bạn - Bạn đã thử sử dụng StyleCop for ReSharper plugin chưa?

Như đã đề xuất trước: vô hiệu hóa bộ quy tắc đặt tên ReSharper nội bộ hoặc chuyển đổi cài đặt kiểm tra. StyleCop (do đó, plugin StyleCop ReSharper) cho phép kế thừa các tệp Settings.StyleCop trong cấu trúc thư mục giải pháp của bạn. Vì vậy, bạn có thể kiểm tra các tên hợp lệ trong các nguồn "thực", trong khi phân tích mã thử nghiệm bị vô hiệu hóa.

2

Tôi đã thêm yêu cầu cho điều này trong trình theo dõi lỗi của ReSharper. Bạn có thể vote for it.

+0

+1 - có vẻ như họ đang sửa nó cho phiên bản tiếp theo! Làm tốt lắm! – TrueWill

1

Không cần phải xóa quy tắc. Bạn có thể thêm quy tắc mới chấp nhận gạch dưới

Resharper | Tùy chọn -> Ngôn ngữ -> Chung -> Kiểu đặt tên và thêm quy tắc mới vào "Quy tắc đặt tên do người dùng xác định",

+1

Dường như việc thêm quy tắc tại đây sau đó thực thi các quy ước đặt tên kiểu BDD trong mã thông thường của bạn. Trừ khi bạn có một cách cụ thể của thiết lập này chỉ cho tên phương pháp thử nghiệm? – MotoWilliams

+0

Bạn nói đúng. Tôi không sử dụng dấu gạch dưới cho các phương pháp thông thường vì vậy tôi đã không nhận thấy điều này. –

2

Trình chia sẻ lại 4.5.1 đã thêm khả năng này. Bây giờ bạn có thể thêm quy tắc đặt tên tùy chỉnh mới áp dụng cụ thể cho phương pháp thử nghiệm và cho phép nó chứa dấu gạch dưới.

+0

Đúng vậy. Đặt kiểu đặt tên mặc định của bạn thành kiểu bạn sử dụng trong mã sản xuất và thêm quy tắc thứ hai, không mặc định cho kiểu đặt tên thử nghiệm của bạn, vì vậy R # không phù hợp khi bạn sử dụng nó. – Jay

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