Tôi đang cố phản ánh chính xác hơn mã vùng trong một dự án mà tôi đang làm việc nhưng đã gặp sự cố khi nói đến các lớp tạo ra Entity Framework. Tôi muốn loại trừ các hàm tạo của các lớp này khỏi các thống kê vùng phủ sóng, do đó tôi đã thêm thuộc tính ExcludeFromCodeCoverage
vào mẫu T4 để tạo lại các lớp như tôi mong đợi, ví dụ:ExcludeFromCodeCoverage thuộc tính với dotCover trong TeamCity 7
using System.Diagnostics.CodeAnalysis;
public partial class Address
{
[ExcludeFromCodeCoverage]
public Address()
{
this.Person = new HashSet<Person>();
}
...
}
Tôi đang cố thêm điều này ở cấp phương thức vì có một số lớp học một phần chứa logic tùy chỉnh cần được kiểm tra và đưa vào thống kê mức độ phù hợp của mã.
Từ những gì tôi đã đọc ExcludeFromCodeCoverage
sẽ tự động được loại trừ khi sử dụng dotCover nhưng tôi không chắc chắn nếu điều này là sự thật khi chạy qua TeamCity, vì vậy tôi bao gồm các bộ lọc như đã đề cập trong Attribute filter syntax for code coverage in TeamCity (thử cả hai ExcludeFromCodeCoverage
và ExcludeFromCodeCoverageAttribute
) với không may mắn.
Cảm ơn
bình luận này không liên quan trực tiếp đến TeamCity & DotCover, nhưng đối với những người sử dụng các dòng lệnh 'DotCover.exe' , để loại trừ mã được đánh dấu bằng thuộc tính 'ExcludeFromCodeCoverage', bạn nên sử dụng' dotCover.exe phân tích .../AttributeFilters = System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute', bạn không cần cú pháp '-:' như với tham số '/ Filters ='. –