Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-72582

Failing to parse pabot generated output.xml with Robot Framework 7.0

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Major Major
    • robot-plugin
    • None

      When running Robot Framework plugin 3.5.0 with pabot, it fails to parse the output.xml and gives the following error:

      Also:   org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: 392fd72f-5164-49c5-a9d4-11eacbe0a368
      java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null
      	at java.base/java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1474)
      	at java.base/java.text.DateFormat.parse(DateFormat.java:397)
      	at hudson.plugins.robot.model.RobotCaseResult.timeDifference(RobotCaseResult.java:68)
      	at hudson.plugins.robot.model.RobotCaseResult.getDuration(RobotCaseResult.java:117)
      	at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:405)
      	at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
      	at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
      	at hudson.plugins.robot.model.RobotResult.tally(RobotResult.java:422)
      	at hudson.plugins.robot.RobotBuildAction.setResult(RobotBuildAction.java:124)
      	at hudson.plugins.robot.RobotBuildAction.<init>(RobotBuildAction.java:95)
      	at hudson.plugins.robot.RobotPublisher.perform(RobotPublisher.java:299)
      	at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101)
      	at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71)
      	at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
      	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
      	at java.base/java.lang.Thread.run(Thread.java:833)
      Finished: FAILURE
      

      It's trying to parse the endtime attribute from the output.xml, but that attribute was removed in Robot Framework 7.0.

          [JENKINS-72582] Failing to parse pabot generated output.xml with Robot Framework 7.0

          Pavan created issue -
          Pavan made changes -
          Description New: using in docker based jenkins
          Mark Waite made changes -
          Component/s New: pipeline [ 21692 ]
          Component/s Original: robot-plugin [ 15773 ]
          Mark Waite made changes -
          Component/s New: robot-plugin [ 15773 ]
          Component/s Original: pipeline [ 21692 ]
          Aleksi Simell made changes -
          Summary Original: Assigning results to build: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: e6ae6b7c-a9c7-4268-b848-f6f16c204233 java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null New: Failing to parse pabot generated output.xml with Robot Framework 7.0
          Aleksi Simell made changes -
          Priority Original: Blocker [ 1 ] New: Major [ 3 ]
          Aleksi Simell made changes -
          Description Original: using in docker based jenkins New: Assigning results to build: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: e6ae6b7c-a9c7-4268-b848-f6f16c204233 java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null
          Aleksi Simell made changes -
          Description Original: Assigning results to build: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: e6ae6b7c-a9c7-4268-b848-f6f16c204233 java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null New: {code}
          [Pipeline] End of Pipeline
          Also: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: 392fd72f-5164-49c5-a9d4-11eacbe0a368
          java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null
          at java.base/java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1474)
          at java.base/java.text.DateFormat.parse(DateFormat.java:397)
          at hudson.plugins.robot.model.RobotCaseResult.timeDifference(RobotCaseResult.java:68)
          at hudson.plugins.robot.model.RobotCaseResult.getDuration(RobotCaseResult.java:117)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:405)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotResult.tally(RobotResult.java:422)
          at hudson.plugins.robot.RobotBuildAction.setResult(RobotBuildAction.java:124)
          at hudson.plugins.robot.RobotBuildAction.<init>(RobotBuildAction.java:95)
          at hudson.plugins.robot.RobotPublisher.perform(RobotPublisher.java:299)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71)
          at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
          at java.base/java.lang.Thread.run(Thread.java:833)
          [Gitea] Notifying branch build status: FAILURE There was a failure building this commit
          [Gitea] Notified
          Finished: FAILURE
          {code}
          Aleksi Simell made changes -
          Description Original: {code}
          [Pipeline] End of Pipeline
          Also: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: 392fd72f-5164-49c5-a9d4-11eacbe0a368
          java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null
          at java.base/java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1474)
          at java.base/java.text.DateFormat.parse(DateFormat.java:397)
          at hudson.plugins.robot.model.RobotCaseResult.timeDifference(RobotCaseResult.java:68)
          at hudson.plugins.robot.model.RobotCaseResult.getDuration(RobotCaseResult.java:117)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:405)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotResult.tally(RobotResult.java:422)
          at hudson.plugins.robot.RobotBuildAction.setResult(RobotBuildAction.java:124)
          at hudson.plugins.robot.RobotBuildAction.<init>(RobotBuildAction.java:95)
          at hudson.plugins.robot.RobotPublisher.perform(RobotPublisher.java:299)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71)
          at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
          at java.base/java.lang.Thread.run(Thread.java:833)
          [Gitea] Notifying branch build status: FAILURE There was a failure building this commit
          [Gitea] Notified
          Finished: FAILURE
          {code}
          New: When running Robot Framework plugin 3.5.0 with pabot, it fails to parse the output.xml and gives the following error:

          {noformat}
          Also: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: 392fd72f-5164-49c5-a9d4-11eacbe0a368
          java.lang.NullPointerException: Cannot invoke "String.length()" because "text" is null
          at java.base/java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1474)
          at java.base/java.text.DateFormat.parse(DateFormat.java:397)
          at hudson.plugins.robot.model.RobotCaseResult.timeDifference(RobotCaseResult.java:68)
          at hudson.plugins.robot.model.RobotCaseResult.getDuration(RobotCaseResult.java:117)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:405)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotSuiteResult.tally(RobotSuiteResult.java:413)
          at hudson.plugins.robot.model.RobotResult.tally(RobotResult.java:422)
          at hudson.plugins.robot.RobotBuildAction.setResult(RobotBuildAction.java:124)
          at hudson.plugins.robot.RobotBuildAction.<init>(RobotBuildAction.java:95)
          at hudson.plugins.robot.RobotPublisher.perform(RobotPublisher.java:299)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101)
          at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71)
          at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
          at java.base/java.lang.Thread.run(Thread.java:833)
          Finished: FAILURE
          {noformat}

          It's trying to parse the {{endtime}} attribute from the output.xml, but that attribute was removed in Robot Framework 7.0.
          Aleksi Simell made changes -
          Resolution New: Not A Defect [ 7 ]
          Status Original: Open [ 1 ] New: Closed [ 6 ]

            aleksisimell Aleksi Simell
            pavans Pavan
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: