Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[2.26.0] NPE when trying to generate report #209

Open
nreymundo opened this issue Jun 25, 2018 · 1 comment
Open

[2.26.0] NPE when trying to generate report #209

nreymundo opened this issue Jun 25, 2018 · 1 comment

Comments

@nreymundo
Copy link

nreymundo commented Jun 25, 2018

Issue

Context

  • Jenkins version: 2.89.5.1

  • Job type: Declarative pipeline and also a simple Maven-type job.

  • Allure plugin version: 2.26.0

  • Allure commandline version: 2.6.0

Problem description

The Jenkins plugin seems unable to generate the report. This doesn't happen everytime but I haven't managed to narrow it down to a specific test case that might be wrong on our end or to a specific set of circumstances.

I'm not sure how much more details I can give since I don't really understand what's happening. The suite runs as expected and the test results are generated but when jenkins invokes the command line to create the report it just fails with a nullPointerException.

At first I thought there was an issue with some of our tests but after 20+ back-to-back runs I don't see a pattern. Around half the reports are correctly generated. The other half doesn't have any test fail that are common throughout all runs and even have a couple in which our 550+ tests all passed successfully but it still failed in the end.

  • what were you doing
    -- Executing a test suite using Jenkins + Maven.
  • what was expected
    -- The Allure report should be correctly generated.
  • what occurred finally
    -- Received Can not generate Allure Report, exit code: 1 on the console.

Logs & Traces

Exception in thread "main" java.lang.NullPointerException
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:152)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$convert$7(Allure2Plugin.java:179)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$86/912672706.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:107)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:179)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$convert$8(Allure2Plugin.java:180)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$87/1785397234.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:107)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:180)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$convert$4(Allure2Plugin.java:117)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$97/1374754488.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:107)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:117)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$getBefore$14(Allure2Plugin.java:246)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$96/1288235781.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:107)
	at io.qameta.allure.allure2.Allure2Plugin.getBefore(Allure2Plugin.java:246)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$convert$2(Allure2Plugin.java:99)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$95/1997353766.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:267)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.allure2.Allure2Plugin.getStages(Allure2Plugin.java:240)
	at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:99)
	at io.qameta.allure.allure2.Allure2Plugin.lambda$readResults$0(Allure2Plugin.java:67)
	at io.qameta.allure.allure2.Allure2Plugin$$Lambda$71/1760126453.accept(Unknown Source)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at io.qameta.allure.allure2.Allure2Plugin.readResults(Allure2Plugin.java:67)
	at io.qameta.allure.ReportGenerator.lambda$readResults$0(ReportGenerator.java:32)
	at io.qameta.allure.ReportGenerator$$Lambda$35/873610597.accept(Unknown Source)
	at java.util.ArrayList.forEach(ArrayList.java:1249)
	at io.qameta.allure.ReportGenerator.readResults(ReportGenerator.java:32)
	at io.qameta.allure.ReportGenerator$$Lambda$32/902830499.apply(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at io.qameta.allure.ReportGenerator.generate(ReportGenerator.java:54)
	at io.qameta.allure.ReportGenerator.generate(ReportGenerator.java:43)
	at io.qameta.allure.Commands.generate(Commands.java:89)
	at io.qameta.allure.CommandLine.run(CommandLine.java:129)
	at io.qameta.allure.CommandLine$$Lambda$1/1830712962.get(Unknown Source)
	at java.util.Optional.orElseGet(Optional.java:267)
	at io.qameta.allure.CommandLine.main(CommandLine.java:72)
ERROR: Build step failed with exception
ru.yandex.qatools.allure.jenkins.exception.AllurePluginException: Can not generate Allure Report, exit code: 1
	at ru.yandex.qatools.allure.jenkins.AllureReportPublisher.generateReport(AllureReportPublisher.java:296)
	at ru.yandex.qatools.allure.jenkins.AllureReportPublisher.perform(AllureReportPublisher.java:218)
	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:754)
	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:700)
	at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1073)
	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:645)
	at hudson.model.Run.execute(Run.java:1749)
	at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543)
	at hudson.model.ResourceController.execute(ResourceController.java:97)
	at hudson.model.Executor.run(Executor.java:429)
Build step 'Allure Report' marked build as failure
Notifying upstream projects of job completion
Finished: FAILURE
@sajidvit340
Copy link

Any update on this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants