Cant generate reports with serenity > 1.1.36 on windows.

188 views
Skip to first unread message

Strugariu Florin

unread,
Sep 27, 2016, 5:27:42 AM9/27/16
to Serenity BDD Users Group
Hi,

Seems like if I'm using serenity higher than 1.36 I can't generate individual test reports.

The error I'm seeing is:

-------------------------------------------------------------------------------------
     _______. _______ .______       _______ .__   __.  __  .___________.____    ____
    /       ||   ____||   _  \     |   ____||  \ |  | |  | |           |\   \  /   /
   |   (----`|  |__   |  |_)  |    |  |__   |   \|  | |  | `---|  |----` \   \/   /
    \   \    |   __|  |      /     |   __|  |  . `  | |  |     |  |       \_    _/
.----)   |   |  |____ |  |\  \----.|  |____ |  |\   | |  |     |  |         |  |
|_______/    |_______|| _| `._____||_______||__| \__| |__|     |__|         |__|
-------------------------------------------------------------------------------------

[main] INFO net.serenitybdd.core.Serenity - PREPARING TO EXECUTE 1 TESTS
[main] INFO net.serenitybdd.core.Serenity - Test Suite Started: Add to cart test
[main] INFO net.serenitybdd.core.Serenity -
 _____ _____ ____ _____   ____ _____  _    ____ _____ _____ ____
|_   _| ____/ ___|_   _| / ___|_   _|/ \  |  _ \_   _| ____|  _ \
  | | |  _| \___ \ | |   \___ \ | | / _ \ | |_) || | |  _| | | | |
  | | | |___ ___) || |    ___) || |/ ___ \|  _ < | | | |___| |_| |
  |_| |_____|____/ |_|   |____/ |_/_/   \_\_| \_\|_| |_____|____/


TEST STARTED: OpenProductPageAndBuyProduct
-------------------------------------------------------------------
[main] INFO net.serenitybdd.core.Serenity - TEST NUMBER: 1
Starting ChromeDriver 2.24.417431 (9aea000394714d2fbb20850021f6204f2256b9cf) on port 38571
Only local connections are allowed.
[main] ERROR net.thucydides.core.model.TestOutcome - Tag provider net.thucydides.core.requirements.PackageRequirementsTagProvider@6bff8c9a failure
java.lang.StringIndexOutOfBoundsException: String index out of range: 1
        at java.lang.String.charAt(String.java:658)
        at java.util.regex.Matcher.appendReplacement(Matcher.java:762)
        at java.util.regex.Matcher.replaceAll(Matcher.java:906)
        at java.lang.String.replaceAll(String.java:2162)
        at net.thucydides.core.requirements.classpath.NarrativeText.definedIn(NarrativeText.java:16)
        at net.thucydides.core.requirements.classpath.NonLeafRequirementsAdder.to(NonLeafRequirementsAdder.java:61)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.addRequirementsDefinedIn(PackageRequirementsTagProvider.java:208)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.requirementsReadFromClasspath(PackageRequirementsTagProvider.java:122)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.fetchRequirements(PackageRequirementsTagProvider.java:100)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.getRequirements(PackageRequirementsTagProvider.java:92)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.getRequirementFor(PackageRequirementsTagProvider.java:229)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.getTagsFor(PackageRequirementsTagProvider.java:249)
        at net.thucydides.core.model.TestOutcome.getTagsUsingTagProviders(TestOutcome.java:1492)
        at net.thucydides.core.model.TestOutcome.getTags(TestOutcome.java:1473)
        at net.thucydides.core.model.TestOutcome.addTags(TestOutcome.java:1522)
        at net.thucydides.core.steps.BaseStepListener.testFinished(BaseStepListener.java:371)
        at net.thucydides.core.steps.StepEventBus.testFinished(StepEventBus.java:247)
        at net.thucydides.junit.listeners.JUnitStepListener.testFinished(JUnitStepListener.java:92)
        at org.junit.runner.notification.SynchronizedRunListener.testFinished(SynchronizedRunListener.java:56)
        at org.junit.runner.notification.RunNotifier$7.notifyListener(RunNotifier.java:190)
        at org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
        at org.junit.runner.notification.RunNotifier.fireTestFinished(RunNotifier.java:187)
        at org.junit.internal.runners.model.EachTestNotifier.fireTestFinished(EachTestNotifier.java:38)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:331)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at net.serenitybdd.junit.runners.SerenityRunner.runChild(SerenityRunner.java:427)
        at net.serenitybdd.junit.runners.SerenityRunner.runChild(SerenityRunner.java:52)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at net.serenitybdd.junit.runners.SerenityRunner.run(SerenityRunner.java:241)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
        at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
[main] INFO net.serenitybdd.core.Serenity -
        __    _____ _____ ____ _____   ____   _    ____  ____  _____ ____
  _     \ \  |_   _| ____/ ___|_   _| |  _ \ / \  / ___|/ ___|| ____|  _ \
 (_)_____| |   | | |  _| \___ \ | |   | |_) / _ \ \___ \\___ \|  _| | | | |
  _|_____| |   | | | |___ ___) || |   |  __/ ___ \ ___) |___) | |___| |_| |
 (_)     | |   |_| |_____|____/ |_|   |_| /_/   \_\____/|____/|_____|____/
        /_/

TEST PASSED: Open product page and buy product
----------------------------------------------------------------------------
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 8.458 sec <<< FAILURE! - in com.features.buy.AddToCartTest
com.features.buy.AddToCartTest  Time elapsed: 8.183 sec  <<< ERROR!
net.thucydides.core.reports.ReportGenerationFailedError: Failed to generate configuration report
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        at net.thucydides.core.reports.ReportService.waitForReportGenerationToFinish(ReportService.java:181)
        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:162)
        at net.thucydides.core.reports.ReportService.generateReportsFor(ReportService.java:111)
        at net.serenitybdd.junit.runners.SerenityRunner.generateReportsFor(SerenityRunner.java:392)
        at net.serenitybdd.junit.runners.SerenityRunner.generateReports(SerenityRunner.java:283)
        at net.serenitybdd.junit.runners.SerenityRunner.run(SerenityRunner.java:248)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
Caused by: net.thucydides.core.reports.ReportGenerationFailedError: Failed to generate reports using net.thucydides.core.reports.html.HtmlAcceptanceTestReporter@2d0e7adf
        at net.thucydides.core.reports.ReportService.generateReportFor(ReportService.java:222)
        at net.thucydides.core.reports.ReportService.access$100(ReportService.java:34)
        at net.thucydides.core.reports.ReportService$1.run(ReportService.java:156)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 1
        at java.lang.String.charAt(String.java:658)
        at java.util.regex.Matcher.appendReplacement(Matcher.java:762)
        at java.util.regex.Matcher.replaceAll(Matcher.java:906)
        at java.lang.String.replaceAll(String.java:2162)
        at net.thucydides.core.requirements.classpath.NarrativeText.definedIn(NarrativeText.java:16)
        at net.thucydides.core.requirements.classpath.NonLeafRequirementsAdder.to(NonLeafRequirementsAdder.java:61)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.addRequirementsDefinedIn(PackageRequirementsTagProvider.java:208)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.requirementsReadFromClasspath(PackageRequirementsTagProvider.java:122)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.fetchRequirements(PackageRequirementsTagProvider.java:100)
        at net.thucydides.core.requirements.PackageRequirementsTagProvider.getRequirements(PackageRequirementsTagProvider.java:92)
        at net.thucydides.core.requirements.MultiSourceRequirementsService.getRequirements(MultiSourceRequirementsService.java:45)
        at net.thucydides.core.requirements.BaseRequirementsService.getRequirementTypes(BaseRequirementsService.java:193)
        at net.thucydides.core.reports.html.HtmlAcceptanceTestReporter.addTestOutcomeToContext(HtmlAcceptanceTestReporter.java:130)
        at net.thucydides.core.reports.html.HtmlAcceptanceTestReporter.generateReportFor(HtmlAcceptanceTestReporter.java:96)
        at net.thucydides.core.reports.ReportService.generateReportFor(ReportService.java:220)
        at net.thucydides.core.reports.ReportService.access$100(ReportService.java:34)
        at net.thucydides.core.reports.ReportService$1.run(ReportService.java:156)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)


Results :

Tests in error:
  JUnit4Provider.invoke:128->executeTestSet:153->executeWithRerun:173->execute:283 ╗ ReportGenerationFailed

Tests run: 2, Failures: 0, Errors: 1, Skipped: 0

Marius Pojar

unread,
Oct 4, 2016, 7:45:43 AM10/4/16
to Serenity BDD Users Group
Hi Florin,

Did you tried aggreagating the report: mvn serenity:aggregate ?

Strugariu Florin

unread,
Oct 12, 2016, 4:57:37 AM10/12/16
to Serenity BDD Users Group
Yes I get a "no CSS" report.


Css report: http://screencast.com/t/5MGJvYSz0j2y
Console: http://screencast.com/t/517EI7B70

This happens with serenity version bigger than 1.1.36

Here is my pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.test</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>Serenity project with JUnit and WebDriver</name>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <serenity.version>1.1.38</serenity.version>
        <webdriver.driver>chrome</webdriver.driver>
    </properties>

    <repositories>
      <repository>
        <snapshots>
        <enabled>false</enabled>
        </snapshots>
        <id>central</id>
        <name>bintray</name>
        <url>http://jcenter.bintray.com</url>
      </repository>
    </repositories>
    <pluginRepositories>
      <pluginRepository>
        <snapshots>
        <enabled>false</enabled>
        </snapshots>
        <id>central</id>
        <name>bintray-plugins</name>
        <url>http://jcenter.bintray.com</url>
      </pluginRepository>
    </pluginRepositories>

    <dependencies>
        <dependency>
            <groupId>net.serenity-bdd</groupId>
            <artifactId>serenity-core</artifactId>
            <version>${serenity.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.7.7</version>
        </dependency>
        <dependency>
            <groupId>net.serenity-bdd</groupId>
            <artifactId>serenity-junit</artifactId>
            <version>${serenity.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core</artifactId>
            <version>1.7.0</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.18.1</version>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-failsafe-plugin</artifactId>
                <version>2.18.1</version>
                <configuration>
                    <includes>
                        <include>**/*Test.java</include>
                        <include>**/Test*.java</include>
                        <include>**/When*.java</include>
                        <include>**/*Story.java</include>
                    </includes>
                    <argLine>-Xmx512m</argLine>
                    <systemPropertyVariables>
                        <webdriver.driver>${webdriver.driver}</webdriver.driver>
                    </systemPropertyVariables>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.2</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.serenity-bdd.maven.plugins</groupId>
                <artifactId>serenity-maven-plugin</artifactId>
                <version>${serenity.version}</version>
                <executions>
                    <execution>
                        <id>serenity-reports</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>aggregate</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

John Smart

unread,
Oct 12, 2016, 6:55:06 AM10/12/16
to Strugariu Florin, Serenity BDD Users Group
This pom file refers to 1.1.38, and the stack trace seems to confirm this. The bug described was fixed in 1.1.42. Could you rerun with version 1.1.42?

--
You received this message because you are subscribed to the Google Groups "Serenity BDD Users Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to thucydides-users+unsubscribe@googlegroups.com.
To post to this group, send email to thucydides-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
___________________________________________________
John Smart | Wakaleo Consulting  |  +44 7398 832273
Making smart teams collaborate better
http://johnfergusonsmart.com  |  john....@wakaleo.com
___________________________________________________

We love breaking down silos and helping smart teams collaborate better! Ask about our tailored on-site workshops in Agile Product Planning, BDD Requirements Discovery,  BDD, TDD and Clean Coding, and Advanced BDD Test Automation.
___________________________________________________

Strugariu Florin

unread,
Oct 12, 2016, 7:39:08 AM10/12/16
to Serenity BDD Users Group, bebef...@gmail.com
Tested with 1.1.42 and all seems OK.

Thanks for the help.
Florin
To unsubscribe from this group and stop receiving emails from it, send an email to thucydides-use...@googlegroups.com.
To post to this group, send email to thucydid...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages