2013-03-14 50 views

Trả lời

8

Cách hiện tại để làm điều đó là bởi chú thích các trận đấu hoặc ở cấp độ lắp ráp với

[ApprovalTests.Namers.UseApprovalSubdirectory("foldername")] 

Nếu bạn là trước khi phiên bản 3.2 bạn có thể tạo một namer tùy chỉnh mà sẽ xử lý này nếu bạn muốn. Những điều cơ bản là:

Override các namer cho khuôn khổ của bạn, và ghi đè lên các phương pháp SourcePath

public string SourcePath 
{ 
    get { return base.SourcePath + @"\yourSubfolder"; } 
} 

Sau đó, bạn cần phải thêm namer mới của bạn vào stack

StackTraceParser.AddParser(new MyNamer()); 

Mặc dù tôi sẽ hỏi tại sao bạn muốn tách các tệp phê duyệt thành một thư mục con của các bài kiểm tra của bạn? Tôi chắc rằng có một lý do chính đáng, nhưng tôi thấy nó tốt hơn để giữ chúng gần hơn với các bài kiểm tra thực tế của tôi.

+0

Tôi không thích trộn mã thực thi và dữ liệu. Bây giờ những điều này có thể được coi là tương tự đối với các thử nghiệm tự động. Tôi sẽ bắt đầu làm như bạn làm - bạn đã sử dụng hệ thống của mình lâu hơn ... – LosManos

+0

Để bảo vệ lý do tại sao bạn muốn thực hiện điều này: nếu bạn có một vài thử nghiệm công bằng trong cùng một không gian tên, số lượng tệp phê duyệt trong thư mục có thể bắt đầu ẩn số lượng tương đối của các lớp thử nghiệm (làm cho việc điều hướng lớp khó khăn hơn) – piers7

5

Từ một cái nhìn tại các mã từ Git, nó trông giống như Llewellyn chỉ cần thêm thuộc tính sau ...

[UseApprovalSubdirectory ("Chấp thuận")]

.. để đặt các chấp thuận trong một thư mục con được gọi là "Phê duyệt". Điều này dường như làm việc ở cấp độ bài kiểm tra và cấp lớp.

Điều này giúp giữ cho các phê duyệt được sắp xếp khi có nhiều tệp phê duyệt cho mỗi tệp kiểm tra đơn vị.

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