【问题标题】:Jenkins configuration with jira.Auto defect reporting on jira if build failedjira 的 Jenkins 配置。如果构建失败,自动在 jira 上报告缺陷
【发布时间】:2019-03-04 10:04:09
【问题描述】:

你好,我是詹金斯的新手,如果我不能很清楚地解释我的问题,我很抱歉。 我被分配了一项任务,即针对失败的案例从詹金斯向 jira 自动报告缺陷。 我已经安装了以下插件

1)Jira 插件 2)JiraTestResultReporter 插件

我已成功实施配置屏幕上所需的配置。 执行构建后,我面临以下问题。

    RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={summary=Summary must be less than 255 characters.}, errorMessages=[]}]}
    at com.atlassian.jira.rest.client.internal.async.DelegatingPromise.claim(DelegatingPromise.java:47)
    at org.jenkinsci.plugins.JiraTestResultReporter.JiraUtils.createIssueInput(JiraUtils.java:114)
    at org.jenkinsci.plugins.JiraTestResultReporter.JiraTestDataPublisher.raiseIssues(JiraTestDataPublisher.java:248)
    at org.jenkinsci.plugins.JiraTestResultReporter.JiraTestDataPublisher.contributeTestData(JiraTestDataPublisher.java:187)
    at hudson.tasks.junit.JUnitResultArchiver.parseAndAttach(JUnitResultArchiver.java:200)
    at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:154)
    at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:81)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:690)
    at hudson.model.Build$BuildExecution.post2(Build.java:186)
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:635)
    at hudson.model.Run.execute(Run.java:1835)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:429)
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={summary=Summary must be less than 255 characters.}, errorMessages=[]}]}
    at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:176)
    at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:170)
    at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:67)
    at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:11)
    at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:268)
    at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:158)
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:975)
    at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:253)
    at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:149)
    at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:134)
    at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:170)
    at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
    at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:268)
    at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:158)
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:975)
    at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:253)
    at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:149)
    at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:134)
    at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:170)
    at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$1$1.run(SettableFuturePromiseHttpPromiseAsyncClient.java:46)
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable$1.run(SettableFuturePromiseHttpPromiseAsyncClient.java:197)
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient.runInContext(SettableFuturePromiseHttpPromiseAsyncClient.java:90)
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable.run(SettableFuturePromiseHttpPromiseAsyncClient.java:192)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Finished: FAILURE

【问题讨论】:

  • 对不起,我无法帮助您解决具体错误,但也许是其他人。请添加您所做的所有信息以及对问题所做的更改。你必须让每个人都清楚和容易地理解你的问题。您还可以删除不必要的 cmets。我会用我的。

标签: jenkins jira


【解决方案1】:

我也承认的问题是${DEFAULT_SUMMARY},不仅仅是

255

JIRA 标题中的字符会产生缺陷,这就是发生此问题的原因。

我认为您必须将默认摘要的参数更改为测试名称,如下所示,这样您就不会再出现这个问题了。

之前-${DEFAULT_SUMMARY}

之后-${TEST_NAME}

让我知道这是否适合你。

【讨论】:

  • 您是否附上了带有缺陷的屏幕截图以防失败
  • @Afshan 截图你不能用这个插件发送。您必须使用另一个插件。另外根据您的问题,您未提及的屏幕截图。此 jira 插件还用于通过 jenkins 更新/创建 jira。
  • 如果使用该插件,您能否分享您的经验。我已经问过这个问题stackoverflow.com/questions/55015955/…
猜你喜欢
  • 2017-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-20
  • 2022-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多