Подтвердить что ты не робот

Jenkins - не удалось: файлы отчетов об испытаниях не найдены. Ошибка конфигурации?

Я начинаю для "Дженкинса" и следую этому руководству.

На шестом шаге я получил ошибку ниже.

xcodebuild: ошибка: схема JenkinsTest в настоящее время не настроена для тестового действия.

Построить шаг "Xcode" отмечен как сбои Запись результатов теста ERROR: Шаг "Опубликовать отчет о результатах теста JUnit не удалось: файлы отчета об испытаниях не найдены. Ошибка конфигурации? Закончено: НЕИСПРАВНОСТЬ

В XML-отчетах теста я установил "test-reports/.* xml"

Я попытался найти свое решение, и многие вопросы основаны на SO, так же, как и у одной проблемы, но я не получил решения.

У меня есть некоторая путаница. Является ли файл.xml автоматически генерируемым "Jenkins" или сначала нам нужно вручную добавить XML файл?

Короче, направляйте меня в правильном направлении, основываясь на вышеуказанной ошибке.

4b9b3361

Ответ 1

Сначала убедитесь, что junit.xml создается после тестового прогона.

Работа Дженкинса порой не может видеть прошлую текущую рабочую область. поэтому всегда рекомендуется копировать отчеты обратно в текущую рабочую область, прежде чем использовать ее.

    cd <path to report>
    cp *.xml $WORKSPACE

Теперь дженкинсы должны подобрать отчет. Примечание. Конфигурация может сначала показывать ошибку (поскольку она не может найти файл xml в рабочем пространстве), но после сборки это должно исчезнуть, а также результат должен быть записан

Ответ 2

Я использую nosetest (python) для создания файла совместимого с xUnit, и я получаю:

ERROR: No test report files were found. Configuration error?

Я использовал плагин junit как:

junit "test-results-unit.xml"

junit добавляет каталог WORKSPACE по умолчанию, поэтому использование полного файла PATH в файле также не будет работать. Я создал символическую ссылку из результирующего файла в каталог WORKSPACE, чтобы он работал:

  sh 'ln -s tests/test-results-unit.xml $WORKSPACE'
  junit "test-results-unit.xml"

Ответ 3

Спасибо @Acid, это действительно помогло мне. Сначала скопируйте модуль /build/test-results в каталог рабочей области.

cp -r app/build/test-results $WORKSPACE/test-results

И тогда я использовал этот путь подстановочный

**/test-results/**/*.xml

Ответ 4

Другие ответы предлагают скопировать файлы в каталог рабочей области, но для меня просто изменение пути, чтобы начать с "**", казалось, решило проблему

junit '**/test-reports/*.xml'

На странице плагина Jenit junit говорится, что вам нужно "указать путь к XML файлам JUnit в синтаксисе глобуса Ant". Я не вникал в подробности того, что это значит, но начала пути с "**" было достаточно, чтобы он сработал для меня.

Ответ 5

Вы также можете включить опцию allowEmptyResults, чтобы плагин junit не выдавал исключение, когда он не находит результаты теста.

Таким образом, не имеет значения, существует ли каталог 'test-results'.

junit allowEmptyResults: true, testResults: '**/test-results/*.xml'