Jenkins не получает результаты теста Junit XML, несмотря на то, что они записываются в соответствующую папку
У меня есть конфигурация Jenkins, которая выполняет серию юнит-тестов pytest после коммитов на Github. Я запускаю свои тесты, используя Jenkinsfile:
withEnv(['PATH+EXTRA=$PYTHON_HOME) {
sh script: "pip install virtualenv"
echo "Checking out Test suite repo."
sh label: "Create virtual environment", script: 'virtualenv venv'
sh label: "Activate virtual environment", script: 'source venv/bin/activate'
sh label: "Install dependencies", script: 'pip install --user -r requirements.txt'
sh label: "Disable pytest error", script: 'set +e'
sh label: 'execute test suite, exit upon first failure', script: "pytest -rxs -k 'test-stuff' --no-snapshot --junit-xml reports/results.xml run_tests.py"
sh label: 'Enable errors', script: 'set -e'
}
post {
always {
junit allowEmptyResults: true, testResults: 'reports/results.xml'
}
}
Как видите, результаты теста junit записываются в папку с именем reports
в файл с именем results.xml
, Это то, что запрашивается в документации, чтобы Дженкинс мог подобрать результаты этих испытаний.
Тем не менее, когда я нажимаю наTests
На вкладке Blue Ocean я вижу следующий экран:
Тем не менее, если я зайду в свое рабочее пространство в Jenkins и перечислю содержимое моего results
каталог, я четко вижу недавно созданныйresults.xml
файл выписан: