В моем Jenkinsfile
я хочу проанализировать XML-файлы, сгенерированные JUnit, чтобы извлечь некоторые пользовательские данные.
Итак, на post
шаге Jenkinsfile
я сначала генерирую результаты теста JUnit, а затемпроанализируйте их по getFailedScenarios()
:
post {
always {
junit '**/test-results/test/*.xml'
}
failure {
slackPost("failed :x: \n${getFailedScenarios()}", "danger")
}
}
Первое, что делает метод getFailedScenarios()
, это определение каталога с файлами XML для чтения и последующего их анализа:
def dir = new File("${env.WORKSPACE}/build/test-results/test")
Но этопроисходит сбой при достижении шага failure
с FileNotFoundException
:
java.io.FileNotFoundException: /opt/jenkins/workspace/my-job-name/build/test-results/test
Неправильно ли указано расположение файлов для файлов JUnit? Или Junit записывает XML-файлы в этот каталог по завершении задания, а не сразу после завершения шага?