Gần đây tôi đã bắt đầu sử dụng lcov để hình dung phạm vi mã của tôi. Đó là một công cụ tuyệt vời.Có cách nào để tập trung các báo cáo bảo hiểm mã lcov vào chỉ một hoặc hai thư mục không?
Một điều tôi nhận thấy là nó tạo ra các báo cáo bảo hiểm mã cho tất cả các tệp tôi đang sử dụng - bao gồm cả những tệp tôi không quan tâm. Ví dụ: nó sẽ cung cấp cho tôi tệp mysql ++.
Có cách nào dễ dàng để buộc lcov chỉ tạo báo cáo bảo hiểm cho các tệp cụ thể không?
Tôi đã thử bằng cách sử dụng tham số -k như vậy: (. Nghĩa là tôi chỉ muốn tập tin bảo hiểm cho "bao gồm" và thư mục "src")
/usr/bin/lcov -q -c -i -b . -d .obj -k src/ -k include/ -o app_base.info {run unit tests now} /usr/bin/lcov -q -c -b . -d .obj -k src/ -k include/ -o app_test.info /usr/bin/lcov -q -a app_base.info -a app_test.info -o app_total.info /usr/bin/genhtml -q -o lcov_output_directory app_total.info
Tuy nhiên, doesn này dường như không hoạt động. Báo cáo vẫn hiển thị cho tôi tất cả các tệp không liên quan. Bất kỳ đề xuất được đánh giá rất nhiều. Cảm ơn!
Lệnh 'tùy chọn --extract' có thể hữu ích hơn. Tạo ra tracefile với tất cả mọi thứ, và sau đó giải nén ra chỉ là các thư mục mà bạn quan tâm vào một tracefile thứ hai. – Dan
Hãy xem [trang này] (http://qiaomuf.wordpress.com/2011/05/26/use-gcov-and-lcov-to-know-your-test-coverage/) có rất hữu ích ví dụ về việc sử dụng --remove. –