2008-09-01 56 views
5

Có thể sử dụng gcov để kiểm tra mức độ phù hợp của các ứng dụng đa luồng không?GCOV cho các ứng dụng đa luồng

Tôi đã thiết lập một số thử nghiệm tầm thường về cơ sở mã của mình, nhưng sẽ rất tuyệt khi có một số ý tưởng về phạm vi chúng tôi đang đạt được. Nếu gcov không thích hợp thì bất cứ ai cũng có thể giới thiệu một công cụ thay thế (có thể mở), lý tưởng với một số tài liệu tốt về việc bắt đầu.

Trả lời

8

Chúng tôi chắc chắn đã sử dụng gcov để nhận thông tin về phạm vi phủ sóng trên ứng dụng đa luồng của chúng tôi.

Bạn muốn biên dịch bằng gcc 4.3 có thể thực hiện phạm vi phủ sóng trên mã động.

Bạn biên dịch với các tùy chọn -fprofile-arcs -ftest-coverage và mã sẽ tạo tệp .gcda mà gcov có thể xử lý.

Chúng tôi tạo một bản dựng riêng biệt cho sản phẩm của chúng tôi và thu thập mức độ phù hợp về điều đó, chạy thử nghiệm đơn vị chạy và thử nghiệm hồi quy.

Cuối cùng, chúng tôi sử dụng lcov để tạo các trang kết quả HTML.

0

Tôi chưa sử dụng gcov cho công việc phủ sóng đa luồng. Tuy nhiên, trên MacOS, công cụ Shark của Apple xử lý nhiều luồng. Nó chủ yếu là một hồ sơ, nhưng có thể làm thông tin bảo hiểm quá.

http://developer.apple.com/tools/sharkoptimize.html

1

Gcov hoạt động tốt cho các ứng dụng đa luồng. Kiến trúc thiết bị đo đạc được tuần tự hóa đúng cách, do đó bạn sẽ nhận được dữ liệu bảo hiểm có độ trung thực tốt.

Tôi khuyên bạn nên sử dụng gcov kết hợp với lcov. Điều này sẽ cung cấp cho bạn các báo cáo tuyệt vời từ phạm vi dự án đầy đủ xuống các tệp nguồn riêng lẻ.

lcov cũng cung cấp cho bạn phiên bản HTML mã hóa màu sắc độc đáo của nguồn của bạn để bạn có thể nhanh chóng đánh giá mức độ phù hợp của bạn.

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