lcov: освещение источника для нескольких казней - PullRequest
1 голос
/ 28 октября 2011
  1. Я создал простое приложение cpp hello word.
  2. Скомпилировал его, передав gcc --coverage flag
  3. Выполнен исполняемый файл
  4. Создано покрытие путем вызова
    lcov --directory . --capture --output-file ic.info
  5. Сгенерированный отчет на основе html от genhtml
    genhtml -o html/ ic.info

Теперь вопрос. Независимо от того, сколько раз я запускаю исполняемый файл, я получаю всегда один и тот же результат, то есть один и тот же охват строк и функций. Должно ли это увеличить покрытие линии для каждого выполнения? Я правильно понял?

Если lcov создает покрытие только для одного выполнения, то как я могу создать покрытие для всех выполнений, которые я сделал?

1 Ответ

1 голос
/ 28 октября 2011

Полагаю, вы неправильно поняли, как генерируются результаты покрытия.lcov не генерирует покрытие, как указано в вашем вопросе.Он обрабатывает только результаты покрытия, которые генерируются при запуске вашей программы (шаг 3 в вашем вопросе).

Итак, при многократном выполнении программы (шаг 3) время выполнения вашей строки будет увеличиваться (не обязательноохват).Чтобы увидеть это, вы можете сгенерировать несколько отчетов о покрытии (выполнить шаги 3, 4 и 5 несколько раз).Вы увидите увеличение времени выполнения строк в вашем коде в отчетах, сгенерированных на шаге 5.

...