Агрегирование результатов теста в Jenkins - PullRequest
0 голосов
/ 22 января 2019

У меня есть Jenkinsfile, который вызывает несколько подзадач через вызовы build job: ....Каждое из этих подзадач запускает несколько модульных тестов.Есть ли какой-нибудь способ собрать все эти результаты теста и сделать их частью результатов теста для работы, которая их вызывает?По сути, если у меня есть 3 задания по 10 тестов в каждом, я бы хотел, чтобы в результате этого было 30 тестов.Я подумал, что, возможно, propagate может сделать это, но это не так.

Ответы [ 2 ]

0 голосов
/ 22 января 2019

Из документации по шагу сборки

размножение (необязательно)

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

Хотя может работать Плагин копирования артефактов

stages {
     stage('Copy Archive') {
         steps {
             script {
                 step ([$class: 'CopyArtifact',
                 projectName: 'Create_archive',
                 filter: "packages/infra*.zip",
                 target: 'Infra']);
             }
         }
     }

Только не забудьте отфильтровать отчеты.

0 голосов
/ 22 января 2019

Вы можете заархивировать результаты теста сборки как артефакты и скопировать их в основное задание, используя copyArtifact шаг сборки, предоставляемый Плагином копирования артефакта .

Простой пример основного заданияJenkinsfile:

build 'sub-job'    
node('master') {
    copyArtifacts projectName: 'sub-job', filter: 'results.xml', selector: lastCompleted()
    junit 'results.xml' // or whatever you use to publish test results
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...