2016-04-27 23 views
9

Tôi đã bật phạm vi mã trong định nghĩa xây dựng cho một dự án trong TFS. enter image description herePhạm vi mã không hoạt động TFS build

Xây dựng như mong đợi, các kiểm tra đơn vị đang hoạt động nhưng độ bao phủ mã hiển thị "Không có dữ liệu phủ sóng xây dựng" xem ảnh chụp màn hình bên dưới.

enter image description here

Mọi trợ giúp đều được đánh giá cao.

+0

Xin lỗi nếu điều này là một câu hỏi ngớ ngẩn cho bạn. Nhưng bạn đã không đề cập đến phiên bản giấy phép của bạn. Như tôi đã hiểu, MS Code Coverage chỉ có sẵn cho phiên bản Enterprise của VS/TFS. Tôi luôn thấy rất khó hiểu rằng tính năng này có thể được chọn, nhưng không hiển thị kết quả trong Phiên bản Chuyên nghiệp. –

+0

@RobertK cảm ơn bạn đã phản hồi. Phiên bản TFS của chúng tôi nói "Team Foundation Server 2015". Tôi không nghĩ rằng chúng tôi có phiên bản doanh nghiệp của TFS. – mahfuz01

+2

Tôi nghĩ rằng không có hương vị prof/doanh nghiệp trên TFS.Nhưng nó sẽ cần ít nhất một phiên bản doanh nghiệp của Visual Studio trên đại lý xây dựng của nó. Để khắc phục điều này, tôi đang sử dụng giải pháp thay thế mã nguồn mở [OpenCover] (https://github.com/OpenCover/opencover). Và tôi đã viết một 'dự án học tập' nhỏ để tích hợp điều này với TFS năm 2015. Nếu bạn quan tâm, hãy thử và/hoặc tham gia cùng tôi ở đó ;-): https://github.com/RobertK66/vsts-opencover –

Trả lời

2

Chỉ cần kiểm tra bên cạnh tôi, Phạm vi mã có sẵn như mong đợi. Tôi muốn chia sẻ các bước của tôi để bạn tham khảo:

  1. Tạo một mặc định Visual Studio mẫu.

  2. Xác định Giải pháp trong Visual Studio Build nhiệm vụ, và kiểm tra Mã Vùng phủ sóng Enabled trong Visual Studio Test nhiệm vụ. Xem ảnh chụp màn hình dưới đây:

enter image description here

enter image description here

Cài đặt khác không thay đổi.

  1. Queue xây dựng, sau đó tôi có thể nhìn thấy mã số bảo hiểm hiển thị trên build Tóm lại:

enter image description here

By the way, tôi đang sử dụng TFS 2015 Update2 .

+2

Hi @ cece-msft đó chính xác là những gì tôi đã làm cho các dự án của mình. xác định đường dẫn giải pháp, thậm chí đã chọn test.dll để chạy. Tôi tìm thấy một nơi nào đó rằng các bài kiểm tra phải được MSTest không nUnit hoặc kiểm tra xUnit. Tôi cũng đã chuyển đổi tất cả các bài kiểm tra của tôi thành MSTest. Vẫn không có may mắn. nó nhận được một chút bực bội – mahfuz01

+0

Bạn đang thử nghiệm loại dự án nào? Mã Bảo hiểm được bật chỉ được hỗ trợ cho các dự án .net và C++. Bạn có thể thử tạo một dự án ánh sáng để kiểm tra chức năng này. –

+0

Hi @ cece-msft giải pháp của tôi là một ứng dụng web MVC 4.5 nhưng các bài kiểm tra đơn vị được thực hiện trên lớp kinh doanh (thư viện lớp). Tôi không nghĩ rằng nó là một vấn đề cho bảo hiểm mã như tôi có thể sử dụng resharper để có được phạm vi mã nhưng quản lý dự án muốn xem nó trên xem web tfs là tốt. – mahfuz01

5

Kết quả phù hợp chỉ là một tệp có phần mở rộng là *.coverage.

Vì vậy, bật hộp kiểm Code Coverage Enabled là không đủ. Hộp kiểm này cho phép tính toán độ bao phủ mã và tạo tệp này.

Tuy nhiên, để đính kèm tệp này *.coverage vào bản dựng, bạn cũng cần bật hộp kiểm Upload Test Attachments trong phần Reporting Options. Vui lòng xem hình ảnh đính kèm.

Reporting Options: Upload Test Attachments Hộp kiểm này cho phép chính xác những gì bạn cần, nó sẽ xuất bản kết quả phù hợp với bản dựng.

Và nhật ký cuối cùng sẽ trông như thế này:

2016-10-17T15:47:03.6834453Z Attachments: 
2016-10-17T15:47:03.6834453Z TFSBUILD 2016-10-17 11_46_53.coverage 
2016-10-17T15:47:03.6834453Z Total tests: Passed: Failed: Skipped: 
2016-10-17T15:47:03.6834453Z Test Run Successful. 
Các vấn đề liên quan