2015-10-22 21 views
9

vì vậy tính năng mới nóng trong Xcode 7 là phạm vi mã được tích hợp trong XCode - yaaay! Với tính năng mới này cũng có định dạng bảo hiểm mã mới của Apple .profdata.Xcode 7 tạo GCOV

Chúng tôi cần hiển thị các báo cáo bảo hiểm mã trong báo cáo Cobertura (được tải trong Jenkins). Hiện tại không có cách nào để chuyển đổi .profdata sang báo cáo Cobertura XML (it is on its way however).

Cho đến lúc đó, chúng tôi cần phải dựa vào gcov "cũ". Đối với một số lý do không rõ XCode 7 tạo ra .gcno và .gcda, NHƯNG khi bạn để gcovr tạo báo cáo Cobertura cho thấy mức độ phù hợp 0% cho tất cả các tệp (chúng tôi chắc chắn có một số vùng phủ sóng).

Chúng tôi đã cố gắng quay lại XCode 6.4 và tệp gcov được tạo cho thấy phạm vi phủ sóng phù hợp khi chạy qua gcovr.

Có ai đang gặp sự cố tương tự không? Bất kỳ giải pháp có thể?

+0

Nếu bạn muốn sử dụng một dịch vụ được lưu trữ: https://github.com/codecov/example-swift (Slather là một tùy chọn quá https://github.com/venmo/slather/pull/99) –

+0

Bạn đã tìm ra điều này? –

Trả lời

-1

Đặt giá trị tiếp theo trong Cài đặt xây dựng các mục tiêu của bạn:

Generate Legacy Test Coverage Data = YES 
Instrument Program Flow = YES 
Enable Code Coverage Support = NO 
+0

Tại sao bạn bỏ phiếu xuống mà không cần giải thích? Nó làm việc cho tôi. – Ossir

0

gcovr nên được thực thi từ thư mục nơi .gcda và .gcno file tồn tại. Và đường dẫn gốc là thư mục chứa tệp nguồn (.c hoặc .cpp).

Với điều này, lệnh sẽ trông giống như hình dưới đây.

rr-mac:gcdaFolder$ gcovr -r /path_to_C_sourceFiles/ .

Đối với tập tin html ra dưới lệnh làm việc

rr-mac:gcdaFolder$ gcovr --html -o Filename_rp.html -r /path_to_C_sourceFiles/ .

Lưu ý: (.) ​​Dấu chấm ở cuối là bắt buộc

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