Задайте параметры тестовой задачи для подключаемого модуля Xray Connector в Jenkins

Я добавил XrayImportBuilder в свой сценарий конвейера, чтобы импортировать результаты теста JUnit в Xray в Jira. На самом деле он работает нормально и, как и ожидалось, создает проблемы с тестами и с выполнением тестов.

Однако json, определенный в importInfo, просто устанавливает параметры для задачи Test Execution в Jira. Это не влияет на информацию о тестовой задаче:

step([$class: 'XrayImportBuilder', 
   endpointName: '/junit/multipart', 
   testPlanKey: 'CL-25466', 
   importFilePath: '**/target/surefire-reports/**/*.xml',
   importInfo: '''{
     "fields": {
       "project": {
          "key": "CL"
       },
       "components": [{
          "name": "123"
       }],
       "summary": "Test Execution for java junit"
    }
   }''',
importToSameExecution: 'true',
inputInfoSwitcher: 'fileContent',
serverInstance: '123435567678123435567678123435567678'])

Есть ли способ добавить дополнительную информацию о полях для задачи Test, кроме стандартных, таких как testPlanKey, fixVersion ..)? Я уже проверил документацию для XrayImportBuilder (https://www.jenkins.io/doc/pipeline/steps/xray-connector/), но не очень подробно описано, что делают параметры.


person Jake2Finn    schedule 05.03.2021    source источник


Ответы (1)


Объект importInfo используется для определения полей, в которых выполняется проверка. Объект testImportInfo, который является чем-то совершенно новым, используется для определения полей для задач Test. Оба объекта используют синтаксис REST API Jira для обновления полей, используя объект JSON полей, как вы упомянули.

Примечание: спасибо за отзыв о документации; Я посмотрю, сможем ли мы прояснить это в следующей версии.

person Sérgio    schedule 05.03.2021
comment
Спасибо за информацию! Я только что попробовал это со следующим кодом: testImportInfo: '' '{fields: {project: {key: CL}, components: [{name: 123}], summary: Test for java junit, customfield_11600: / 123 / JUnit }} '' ', но экспорт теперь не дает мне никаких ошибок или исключений. Это просто не удается. Я использую плагин версии 2.4.0, поэтому предполагаю, что объект testImportInfo поддерживается. Что мне нужно знать, когда я использую этот объект? - person Jake2Finn; 05.03.2021
comment
Вы используете облако или сервер Xray? Если вы используете сервер Jira, какая у вас версия Xray? На сервере Xray это доступно в версии 3.5.0. Если у вас нет журналов, будет сложно диагностировать. Что написано в логах консоли в Jenkins? можешь поделиться скриншотом? В противном случае вам может потребоваться отладить запрос, который отправляется в Jira, или просмотреть его со стороны / журналов Jira. - person Sérgio; 05.03.2021
comment
Я только что получил подтверждение, что это дата-центр 4.2.8. Это должно сработать, не так ли? - person Jake2Finn; 05.03.2021
comment
Мне удалось выяснить следующее: java.lang.NullPointerException в com.xpandit.plugins.xrayjenkins.task.XrayImportBuilder.tryUploadResults (XrayImportBuilder.java:789) в com.xpandit.plugins.xray.xenloadResults ( XrayImportBuilder.java:693) в com.xpandit.plugins.xrayjenkins.task.XrayImportBuilder.importResultsSequential (XrayImportBuilder.java:594) в com.xpandit.plugins.xrayjenkins.Taskuilder.Xray - person Jake2Finn; 05.03.2021
comment
хорошо, я сам это понял, проверив класс XrayImportBuilder .java: 789 на gitHub: мне не хватало inputTestInfoSwitcher ... теперь он работает! :) - person Jake2Finn; 05.03.2021
comment
круто @ Jake2Finn :) - person Sérgio; 05.03.2021
comment
@ Jake2Finn, не могли бы вы обновить свой REST-запрос, указав, как вы использовали testImportInfo? Благодарность! - person Leonardo; 19.03.2021