Маркеры исключения для gcov

Я использую gcov для измерения покрытия в моем коде C ++.

Я хотел бы иметь возможность отмечать определенные строки исходного кода, чтобы они были исключены из отчетов о покрытии при использовании gcovr. Я знаю, что они существуют, потому что однажды наткнулся на них, но теперь не могу найти, где я их видел.

Я не использую lcov для сообщения о покрытии, поэтому ссылки на такие маркеры мне не подходят.

Может ли кто-нибудь указать мне правильное место?

TIA


person ksl    schedule 23.12.2014    source источник


Ответы (1)


Я наконец понял это. Маркеры исключения lcov действительны с gcovr.

Geninfo распознает следующие маркеры:

  • LCOV_EXCL_LINE
    • Lines containing this marker will be excluded.
  • LCOV_EXCL_START
    • Marks the beginning of an excluded section. The current line is part of this section.
  • LCOV_EXCL_STOP
    • Marks the end of an excluded section. The current line not part of this section.

Вы также можете заменить 'LCOV' выше на 'GCOV' или 'GCOVR'. Все они работают.

person ksl    schedule 06.05.2015
comment
У меня это не работает. Я использую gcovr 3.2 и помечаю свои строки C ++ с помощью // LCOV_EXCL_LINE, но он по-прежнему включает их. Какие варианты gcovr вы используете? Я пробовал LCOV / GCOV / GCOVR, и я попытался использовать вместо них ..._ START и ..._ STOP. Ничего не работает. - person jsp; 22.07.2016
comment
Я использую gcovr версию 3.2. Я запускаю его со следующими параметрами: gcovr --html --html-details -o <output-filename> -s -v -g -k -r <path-to-files> . - person ksl; 25.07.2016
comment
Хм, все еще не работает. Вероятно, это как-то связано с моей структурой каталогов. В любом случае спасибо за вашу помощь. - person jsp; 26.07.2016
comment
Возможно, если вы опубликуете вопрос с подробным описанием того, что именно вы делаете, я смогу увидеть проблему. Или кто-то другой может. - person ksl; 27.07.2016
comment
Хорошая идея, я разместил ее здесь: stackoverflow.com/questions/38618136/ - person jsp; 27.07.2016