#batch-file #cmd #code-coverage #command-line-arguments #jenkins-groovy
#пакетный файл #cmd #покрытие кода #аргументы командной строки #дженкинс- заводной
Вопрос:
Я пытаюсь преобразовать файлы * .coverage в XML, а затем использовать их и опубликовать покрытие кода в Jenkins. Однако путь к файлу покрытия всегда отличается и содержит временную метку. Из-за этого, когда я вызываю CodeCoverage.exe и я пытаюсь передать шаблон вместо прямого пути и прямого имени файла.
В основном все работает, когда я указываю непосредственно на файл, но когда используется шаблон, ничего не происходит.
*This is working*
C:CodeCoverageCoverageToolCodeCoverage.exe analyze -output:.TestResultscoverage.xml ".TestResultscoveragefilestest.coverage
*This is not working*
C:CodeCoverageCoverageToolCodeCoverage.exe analyze -output:.TestResultscoverage.xml ".TestResults***.coverage
Теперь пытаюсь заставить его работать в cmd, но letter поместит его в groovy (Jenkinsfile) в качестве команды bat.
Возможно ли это вообще таким образом? Должен ли я сначала найти строку, создать строковую переменную и передать ее в codecoverage? заранее спасибо
Комментарии:
1. Поместите в свой пакетный файл:
for /r ".TestResults" %%a in (*.coverage) do echo %%a
. Оттуда это должно быть легко.2. … или
for /D %%J in (".TestResults*") do for %%I in ("%%~J*.coverage") do echo "%%~I"
в случае.coverage
, если файлы всегда находятся на одном и том же уровне иерархии каталогов…3. Я помещаю его в groovy (Jenkinsfile),
bat "for /r ".TestResults" %%a in (*.coverage) do echo %%a"
но безуспешно, даже если я использую groovy синтаксис, подобныйbat "for /r "./TestResults" %%a in (*.coverage) do echo %%a"
. Извините за это, но я что-то упускаю?4. Не знаю о Дженкинсе. Если требуется командная строка, попробуйте заменить каждый
%%
из них одним%