serenity-bdd / serenity-core

Serenity BDD is a test automation library designed to make writing automated acceptance tests easier, and more fun.
http://serenity-bdd.info
Other
720 stars 519 forks source link

Random failure with ReportGenerationFailedError when runnning on Bamboo #1669

Closed nu75h311 closed 2 years ago

nu75h311 commented 5 years ago

This is happening ~1 out of 10 runs, on different submodules. Locally it runs fine.

Any ideas?

Versions:

<version.serenity>2.0.9</version.serenity>
<version.serenity.maven>2.0.9</version.serenity.maven>
<version.serenity.cucumber>1.9.19</version.serenity.cucumber>
<version.cucumber>2.4.0</version.cucumber>
<version.commons-collections>3.2.1</version.commons-collections>
<version.xml-apis>1.4.01</version.xml-apis>

Stack trace:

build   30-Apr-2019 13:50:57    Tests run: 8, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 39.153 sec <<< FAILURE! - in com.asml.wfa.setup.alignmentadvisor.coretest.CoreTestRunnerIT
build   30-Apr-2019 13:50:57    com.asml.wfa.setup.alignmentadvisor.coretest.CoreTestRunnerIT  Time elapsed: 2.684 sec  <<< ERROR!
build   30-Apr-2019 13:50:57    net.thucydides.core.reports.ReportGenerationFailedError: Failed to generate configuration report
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.waitForReportGenerationToFinish(ReportService.java:203)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:180)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:127)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.generateReports(SerenityReporter.java:892)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.handleTestRunFinished(SerenityReporter.java:325)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.lambda$new$6(SerenityReporter.java:121)
build   30-Apr-2019 13:50:57        at cucumber.runner.EventBus.send(EventBus.java:28)
build   30-Apr-2019 13:50:57        at cucumber.api.junit.Cucumber$1.evaluate(Cucumber.java:128)
build   30-Apr-2019 13:50:57        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
build   30-Apr-2019 13:50:57        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
build   30-Apr-2019 13:50:57        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
build   30-Apr-2019 13:50:57    Caused by: java.util.concurrent.ExecutionException: net.thucydides.core.reports.ReportGenerationFailedError: Failed to generate reports using net.thucydides.core.reports.json.JSONTestOutcomeReporter@78fa857c
build   30-Apr-2019 13:50:57        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
build   30-Apr-2019 13:50:57        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.waitForReportGenerationToFinish(ReportService.java:200)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:180)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:127)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.generateReports(SerenityReporter.java:892)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.handleTestRunFinished(SerenityReporter.java:325)
build   30-Apr-2019 13:50:57        at cucumber.runtime.formatter.SerenityReporter.lambda$new$6(SerenityReporter.java:121)
build   30-Apr-2019 13:50:57        at cucumber.runner.EventBus.send(EventBus.java:28)
build   30-Apr-2019 13:50:57        at cucumber.api.junit.Cucumber$1.evaluate(Cucumber.java:128)
build   30-Apr-2019 13:50:57        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
build   30-Apr-2019 13:50:57        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
build   30-Apr-2019 13:50:57        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
build   30-Apr-2019 13:50:57        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
build   30-Apr-2019 13:50:57    Caused by: net.thucydides.core.reports.ReportGenerationFailedError: Failed to generate reports using net.thucydides.core.reports.json.JSONTestOutcomeReporter@78fa857c
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportFor(ReportService.java:241)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.lambda$generateReportsFor$0(ReportService.java:175)
build   30-Apr-2019 13:50:57        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
build   30-Apr-2019 13:50:57        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
build   30-Apr-2019 13:50:57        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
build   30-Apr-2019 13:50:57        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
build   30-Apr-2019 13:50:57        at java.lang.Thread.run(Thread.java:748)
build   30-Apr-2019 13:50:57    Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: target/site/serenity/load_data_load_multi_lot_data__multiple_adelmetrologies_per_lot__unique_wafer_id?s_(calibration_case).jsone648f935-cd55-4b3a-9733-4c58e58d50ad
build   30-Apr-2019 13:50:57        at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
build   30-Apr-2019 13:50:57        at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
build   30-Apr-2019 13:50:57        at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
build   30-Apr-2019 13:50:57        at java.io.File.toPath(File.java:2234)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.json.JSONTestOutcomeReporter.generateReportFor(JSONTestOutcomeReporter.java:64)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.generateReportFor(ReportService.java:239)
build   30-Apr-2019 13:50:57        at net.thucydides.core.reports.ReportService.lambda$generateReportsFor$0(ReportService.java:175)
build   30-Apr-2019 13:50:57        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
build   30-Apr-2019 13:50:57        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
build   30-Apr-2019 13:50:57        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
build   30-Apr-2019 13:50:57        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
build   30-Apr-2019 13:50:57        at java.lang.Thread.run(Thread.java:748)
build   30-Apr-2019 13:50:57    
build   30-Apr-2019 13:50:57    Exception in thread "Thread-8" org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.enterprise.context.Dependent
build   30-Apr-2019 13:50:57        at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:689)
build   30-Apr-2019 13:50:57        at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:742)
build   30-Apr-2019 13:50:57        at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:762)
build   30-Apr-2019 13:50:57        at org.jboss.weld.bean.builtin.InstanceImpl.getBeanInstance(InstanceImpl.java:168)
build   30-Apr-2019 13:50:57        at org.jboss.weld.bean.builtin.InstanceImpl.get(InstanceImpl.java:88)
build   30-Apr-2019 13:50:57        at org.jboss.weld.bootstrap.WeldRuntime.shutdown(WeldRuntime.java:54)
build   30-Apr-2019 13:50:57        at org.jboss.weld.bootstrap.WeldBootstrap.shutdown(WeldBootstrap.java:113)
build   30-Apr-2019 13:50:57        at org.jboss.weld.environment.se.ShutdownManager.shutdown(ShutdownManager.java:48)
build   30-Apr-2019 13:50:57        at org.jboss.weld.environment.se.Weld.shutdown(Weld.java:259)
build   30-Apr-2019 13:50:57        at com.asml.wfa.setup.ccc.testutils.general.WeldContext$1.run(WeldContext.java:19)
build   30-Apr-2019 13:50:57    
build   30-Apr-2019 13:50:57    Results :
build   30-Apr-2019 13:50:57    
build   30-Apr-2019 13:50:57    Tests in error: 
build   30-Apr-2019 13:50:57      CoreTestRunnerIT.com.asml.wfa.setup.alignmentadvisor.coretest.CoreTestRunnerIT » ReportGenerationFailed
build   30-Apr-2019 13:50:57    
build   30-Apr-2019 13:50:57    Tests run: 8, Failures: 0, Errors: 1, Skipped: 0
build   30-Apr-2019 13:50:57    
build   30-Apr-2019 13:50:57    [INFO] 
build   30-Apr-2019 13:50:57    [INFO] --- maven-failsafe-plugin:2.18.1:verify (default-integration-testing) @ setup-alignment-advisor-core-test ---
build   30-Apr-2019 13:50:57    [INFO] Failsafe report directory: /atlassian/bamboo/agent/5.15.3/xml-data/build-dir/LB-LISIT1412-JOB1/SetupApplications/alignment/advisor/core-test/target/failsafe-reports
build   30-Apr-2019 13:50:57    [ERROR] There are test failures.
wakaleo commented 5 years ago

Thanks for the stack dump, it looks like an os-specific thing. I will investigate.

nu75h311 commented 5 years ago

Some more info: we identified this character was used instead of ' in the feature file, which is not dealt with well depending on the OS running. And apparently some of the bamboo runners have different OS configurations (hence the randomness). We are not sure this was the cause but we'll keep monitoring.

wakaleo commented 5 years ago

That could explain the "Malformed input or input contains unmappable characters" message

nu75h311 commented 5 years ago

Hi @wakaleo - the issue has not happened since we changed the apostrophe char in the feature file. Do you want to keep this ticket open for a conditional fix or just close it?