Изменен: 05.01.2025 15:48:03
Библиотека для конвертации результата расчета покрытия тестами в различные форматы
GenericCoverage, используемый SonarQubeClover, используемый на серверe сборок BambooCobertura - популярный формат python и javaДля установки необходимо:
opm install -f <ПутьКФайлу>
или установить с хаба пакетов
opm install coverage
coverage.os#Использовать coverage
#Использовать 1commands
ФС.ОбеспечитьПустойКаталог("coverage");
ПутьКСтат = "coverage/stat.json";
Команда = Новый Команда;
Команда.УстановитьКоманду("oscript");
Команда.ДобавитьПараметр("-encoding=utf-8");
Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат));
Команда.ДобавитьПараметр("tasks/test.os"); // Файла запуска тестов
Команда.ПоказыватьВыводНемедленно(Истина);
КодВозврата = Команда.Исполнить();
Файл_Стат = Новый Файл(ПутьКСтат);
ИмяПакета = "oscript-package";
ПроцессорГенерации = Новый ГенераторОтчетаПокрытия();
ПроцессорГенерации.ОтносительныеПути()
.ФайлСтатистики(Файл_Стат.ПолноеИмя)
.GenericCoverage() // // Формирование отчета в формате GenericCoverage
.Cobertura() // Формирование отчета в формате Cobertura
.Clover(ИмяПакета) // Формирование отчета в формате Clover
.Сформировать();
ЗавершитьРаботу(КодВозврата);
vscodecoverage-gutters для vscodecoverage-gutters.xmlname): coverage/coverage.xmlcoverage по инструкцииcoverage.os с содержанием#Использовать coverage
#Использовать 1commands
ФС.ОбеспечитьПустойКаталог("coverage");
ПутьКСтат = "coverage/stat.json";
Команда = Новый Команда;
Команда.УстановитьКоманду("oscript");
Команда.ДобавитьПараметр("-encoding=utf-8");
Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат));
Команда.ДобавитьПараметр("tasks/test.os"); // ВАЖНО ФАЙЛ ДЛЯ ТЕСТОВ
Команда.ПоказыватьВыводНемедленно(Истина);
КодВозврата = Команда.Исполнить();
Файл_Стат = Новый Файл(ПутьКСтат);
ПроцессорГенерации = Новый ГенераторОтчетаПокрытия();
ПроцессорГенерации.ОтносительныеПути()
.ФайлСтатистики(Файл_Стат.ПолноеИмя)
.Cobertura()
.Сформировать();
coverage.os для выполнения тестов и создания отчетовDisplay Coverage) в контекстном меню открытого файлаДокументация публичного интерфейса (в разработке)
Доработка проводится по git-flow. Жду ваших PR.
Смотри файл LICENSE.