Я настраиваю проект Jenkins для проекта PHP. Я установил плагин Clover и хочу видеть отчеты Clover на странице моего проекта. Следуя документации к плагину Clover я добавил этот фрагмент в свой конвейер:
step([
$class:'CloverPublisher',
cloverReportDir: 'build/coverage',
cloverReportFileName: 'build/logs/clover.xml',
healthyTarget: [methodCoverage: 70, conditionalCoverage: 70, statementCoverage: 70],
unhealthyTarget: [methodCoverage: 50, conditionalCoverage: 50, statementCoverage: 50],
failingTarget: [methodCoverage: 0, conditionalCoverage: 0, statementCoverage: 0]
])
Соответствующая папка build/coverage
и файл build/logs/clover.xml
существуют:
$ cd /path/ma/project
$ ls build/coverage
ModuleA ModuleB ModuleC dashboard.html index.html
$ ls build/logs
clover.xml crap4j.xml junit.xml
Но на странице проекта Jenkins нет отчета Clover. Вместо этого в навигации сборки отображается только новая ссылка OpenClover HTML Report
. Эта ссылка ведет на HTML отчет о покрытии.
Что я делаю не так? Как получить отчет о Clover?
Jenkinsfile
pipeline {
agent {
node {
label params.LABEL
customWorkspace params.PROJECT_ROOT
}
}
stages {
stage('Build') {
steps {
sh 'hostname'
sh 'pwd'
}
}
stage ('Test') {
steps {
sh 'echo "Test"'
// sh './vendor/bin/phpunit ./test/Unit'
sh 'vendor/bin/phpunit --testsuite "unit-app-only"'
step([
$class: 'XUnitBuilder',
tools: [
PHPUnit([
pattern: 'build/logs/junit.xml',
skipNoTestFiles: true,
failIfNotNew: false,
deleteOutputFiles: false,
stopProcessingIfError: true
])
]
])
step([
$class:'CloverPublisher',
cloverReportDir: 'build/coverage',
cloverReportFileName: 'build/logs/clover.xml',
healthyTarget: [methodCoverage: 70, conditionalCoverage: 70, statementCoverage: 70],
unhealthyTarget: [methodCoverage: 50, conditionalCoverage: 50, statementCoverage: 50],
failingTarget: [methodCoverage: 0, conditionalCoverage: 0, statementCoverage: 0]
])
publishHTML([
allowMissing: true,
alwaysLinkToLastBuild: false,
keepAll: true,
reportDir: 'build/coverage',
reportFiles: 'index.html',
reportName: 'HTML Publisher Report'
])
}
}
}
}