Консольное приложение для конвертации результатов покрытия
Для получения замеров покрытия используется библиотека https://github.com/proDOOMman/Coverage41C
Для тех кому не терпится начать уже готов пайплайн Jenkins /examples/coverage.jenkinsfile
.
Надо просто указать свои значения в первой секции environment
Для тех у кого нет Jenkins-а или кому тесны рамки консольного приложения все возможности пакета доступны через API. Смотри /examples/coverage.os
. Все тоже самое, что в Jenkins, но через API.
coverage-cli start --infobase test_database --output coverage.csv
coverage-cli stop
Конвертирует результаты покрытия из CSV формата во genericCoverage XML формат. При этом:
- Сопоставляются внутренние идентификаторы программных модулей и файлы с исходными кодами проекта
- Устраняется дублирование номеров строк в замерах.
- Убираются замеры программных модулей для которых не найдены соответсвующие файлы с исходными кодами.
При указании опции --json
отчет сохраняется во внутреннем JSON-формате, содержащем более подробную информацию о модулях.
Примеры:
- Конвертация замеров для модулей конфигурации в формате выгрузки конфигуратора:
coverage-cli convert --input coverage.csv --output coveredLines.xml --sources src/cf --format XML
- Конвертация замеров для модулей конфигурации в формате выгрузки EDT:
coverage-cli convert --input coverage.csv --output coveredLines.xml --sources ProjectName/src --format EDT
- Конвертация замеров для модулей конфигурации и модулей расширения поддерживается через конфигурационный файл (пример файла можно посмотреть в
/examples
:
coverage-cli convert --input coverage.csv --input coveredLines.xml --config coverage-conf.json
Формирует список строк требующих покрытия. Пример:
coverage-cli lines --sources src/cf --output linesToCover.xml
Объединяет несколько отчетов покрытия в каталоге (например сформированных командами convert
и lines
) в один.
coverage-cli report --input coverageReports --output genericCoverage.xml