serenity-bdd / serenity-demos

64 stars 170 forks source link

Error executing the project #37

Closed sahutarun closed 7 years ago

sahutarun commented 7 years ago

Hi,

I was trying to build my new project using cucumber, serenity and maven. I am getting errors with executing the project and due to this my build is unable to create an aggregate report. Can someone please help me?

Here is how my pom look like

<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">

4.0.0
<groupId>FinancialServices</groupId>
<artifactId>NewProject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>NewProject</name>
<url>http://maven.apache.org</url>

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

<dependencies>

    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-java -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>1.2.5</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-junit -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>1.2.5</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/junit/junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-picocontainer -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-picocontainer</artifactId>
        <version>1.2.4</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.0.1</version>
    </dependency>

    <!-- http://mvnrepository.com/artifact/net.serenity-bdd/serenity-core -->
    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-core</artifactId>
        <version>1.1.36</version>
    </dependency>

    <!-- http://mvnrepository.com/artifact/net.serenity-bdd/serenity-cucumber -->
    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-cucumber</artifactId>
        <version>1.1.8</version>
    </dependency>

    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-junit</artifactId>
        <version>${serenity.version}</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.6.1</version>
    </dependency>

    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.1</version>
    </dependency>

</dependencies>

<build>
    <plugins>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.18.1</version>
            <configuration>
                <testFailureIgnore>true</testFailureIgnore>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.5.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

        <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>2.19.1</version>
            <executions>
                <execution>
                    <goals>
                        <goal>integration-test</goal>
                        <goal>verify</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>net.serenity-bdd.maven.plugins</groupId>
            <artifactId>serenity-maven-plugin</artifactId>
            <version>${serenity.maven.version}</version>
            <dependencies>
                <dependency>
                    <groupId>net.serenity-bdd</groupId>
                    <artifactId>serenity-core</artifactId>
                    <version>${serenity.version}</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <id>serenity-reports</id>
                    <phase>post-integration-test</phase>
                    <goals>
                        <goal>aggregate</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

I am getting the below errors while executing the same

[INFO] Scanning for projects... [INFO]
[INFO] ------------------------------------------------------------------------ [INFO] Building NewProject 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ NewProject --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory /Users/tarunsahu/Documents/workspace/NewProject/src/main/resources [INFO] [INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ NewProject --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ NewProject --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] [INFO] --- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ NewProject --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 4 source files to /Users/tarunsahu/Documents/workspace/NewProject/target/test-classes [ERROR] error reading /Users/tarunsahu/.m2/repository/org/codehaus/groovy/groovy/2.4.4/groovy-2.4.4.jar; invalid LOC header (bad signature) [INFO] [INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ NewProject --- [INFO] Surefire report directory: /Users/tarunsahu/Documents/workspace/NewProject/target/surefire-reports


T E S T S

105 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - LOADING LOCAL PROPERTIES FROM /Users/tarunsahu/Documents/workspace/NewProject/serenity.properties 106 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - LOADING LOCAL PROPERTIES FROM /Users/tarunsahu/Documents/workspace/NewProject/serenity.properties 107 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - LOADING LOCAL PROPERTIES FROM /Users/tarunsahu/Documents/workspace/NewProject/serenity.properties 109 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.requirements.dir=src/test/resources/features 110 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.browser,width=1200 110 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - webdriver.driver=chrome 110 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.project.name=HSBC 111 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.take.screenshots=AFTER_EACH_STEP 111 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.browser,height=1200 111 [main] INFO net.thucydides.core.util.PropertiesFileLocalPreferences - serenity.requirement.types=feature, story Running test.TestRunner Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.024 sec <<< FAILURE! - in test.TestRunner initializationError(test.TestRunner) Time elapsed: 0.021 sec <<< ERROR! java.lang.Exception: No runnable methods at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:191) at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:128) at org.junit.runners.ParentRunner.validate(ParentRunner.java:416) at org.junit.runners.ParentRunner.(ParentRunner.java:84) at org.junit.runners.BlockJUnit4ClassRunner.(BlockJUnit4ClassRunner.java:65) at net.serenitybdd.junit.runners.SerenityRunner.(SerenityRunner.java:153) at net.serenitybdd.junit.runners.SerenityRunner.(SerenityRunner.java:109) at net.serenitybdd.junit.runners.SerenityRunner.(SerenityRunner.java:93) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104) at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33) 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)

Results :

Tests in error: TestRunner.initializationError » No runnable methods

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

[ERROR] There are test failures.

Please refer to /Users/tarunsahu/Documents/workspace/NewProject/target/surefire-reports for the individual test results. [INFO] [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ NewProject --- [INFO] Building jar: /Users/tarunsahu/Documents/workspace/NewProject/target/NewProject-0.0.1-SNAPSHOT.jar [INFO] [INFO] --- maven-failsafe-plugin:2.19.1:integration-test (default) @ NewProject --- [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! The file encoding for reports output files should be provided by the POM property ${project.reporting.outputEncoding}. [INFO] [INFO] --- serenity-maven-plugin:1.1.36:aggregate (serenity-reports) @ NewProject --- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 7.138 s [INFO] Finished at: 2017-07-23T03:05:03+05:30 [INFO] Final Memory: 33M/280M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate (serenity-reports) on project NewProject: Execution serenity-reports of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate failed: A required class was missing while executing net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate: org/apache/commons/lang3/StringUtils [ERROR] ----------------------------------------------------- [ERROR] realm = plugin>net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy [ERROR] urls[0] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/maven/plugins/serenity-maven-plugin/1.1.36/serenity-maven-plugin-1.1.36.jar [ERROR] urls[1] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/serenity-core/1.1.36/serenity-core-1.1.36.jar [ERROR] urls[2] = file:/Users/tarunsahu/.m2/repository/com/google/guava/guava/18.0/guava-18.0.jar [ERROR] urls[3] = file:/Users/tarunsahu/.m2/repository/com/google/code/findbugs/jsr305/3.0.1/jsr305-3.0.1.jar [ERROR] urls[4] = file:/Users/tarunsahu/.m2/repository/com/google/inject/guice/3.0/guice-3.0.jar [ERROR] urls[5] = file:/Users/tarunsahu/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar [ERROR] urls[6] = file:/Users/tarunsahu/.m2/repository/cglib/cglib/3.1/cglib-3.1.jar [ERROR] urls[7] = file:/Users/tarunsahu/.m2/repository/org/ow2/asm/asm/5.0.3/asm-5.0.3.jar [ERROR] urls[8] = file:/Users/tarunsahu/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar [ERROR] urls[9] = file:/Users/tarunsahu/.m2/repository/org/objenesis/objenesis/2.1/objenesis-2.1.jar [ERROR] urls[10] = file:/Users/tarunsahu/.m2/repository/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.jar [ERROR] urls[11] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-core/1.2.4/cucumber-core-1.2.4.jar [ERROR] urls[12] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-html/0.2.3/cucumber-html-0.2.3.jar [ERROR] urls[13] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-jvm-deps/1.0.5/cucumber-jvm-deps-1.0.5.jar [ERROR] urls[14] = file:/Users/tarunsahu/.m2/repository/info/cukes/gherkin/2.12.2/gherkin-2.12.2.jar [ERROR] urls[15] = file:/Users/tarunsahu/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar [ERROR] urls[16] = file:/Users/tarunsahu/.m2/repository/junit/junit/4.12/junit-4.12.jar [ERROR] urls[17] = file:/Users/tarunsahu/.m2/repository/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar [ERROR] urls[18] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/serenity-report-resources/1.1.36/serenity-report-resources-1.1.36.jar [ERROR] urls[19] = file:/Users/tarunsahu/.m2/repository/com/google/code/gson/gson/2.4/gson-2.4.jar [ERROR] urls[20] = file:/Users/tarunsahu/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar [ERROR] urls[21] = file:/Users/tarunsahu/.m2/repository/com/opera/operadriver/1.5/operadriver-1.5.jar [ERROR] urls[22] = file:/Users/tarunsahu/.m2/repository/com/opera/operalaunchers/1.1/operalaunchers-1.1.jar [ERROR] urls[23] = file:/Users/tarunsahu/.m2/repository/com/google/protobuf/protobuf-java/2.4.1/protobuf-java-2.4.1.jar [ERROR] urls[24] = file:/Users/tarunsahu/.m2/repository/commons-jxpath/commons-jxpath/1.3/commons-jxpath-1.3.jar [ERROR] urls[25] = file:/Users/tarunsahu/.m2/repository/org/ini4j/ini4j/0.5.2/ini4j-0.5.2.jar [ERROR] urls[26] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-server/2.53.0/selenium-server-2.53.0.jar [ERROR] urls[27] = file:/Users/tarunsahu/.m2/repository/com/beust/jcommander/1.48/jcommander-1.48.jar [ERROR] urls[28] = file:/Users/tarunsahu/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar [ERROR] urls[29] = file:/Users/tarunsahu/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar [ERROR] urls[30] = file:/Users/tarunsahu/.m2/repository/mx4j/mx4j-tools/3.0.1/mx4j-tools-3.0.1.jar [ERROR] urls[31] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/jetty-repacked/9.2.13.v20150730/jetty-repacked-9.2.13.v20150730.jar [ERROR] urls[32] = file:/Users/tarunsahu/.m2/repository/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar [ERROR] urls[33] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/jetty-rc-repacked/5/jetty-rc-repacked-5.jar [ERROR] urls[34] = file:/Users/tarunsahu/.m2/repository/net/jcip/jcip-annotations/1.0/jcip-annotations-1.0.jar [ERROR] urls[35] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-java/2.53.0/selenium-java-2.53.0.jar [ERROR] urls[36] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-chrome-driver/2.53.0/selenium-chrome-driver-2.53.0.jar [ERROR] urls[37] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-remote-driver/2.53.0/selenium-remote-driver-2.53.0.jar [ERROR] urls[38] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-api/2.53.0/selenium-api-2.53.0.jar [ERROR] urls[39] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-edge-driver/2.53.0/selenium-edge-driver-2.53.0.jar [ERROR] urls[40] = file:/Users/tarunsahu/.m2/repository/org/apache/commons/commons-exec/1.3/commons-exec-1.3.jar [ERROR] urls[41] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-firefox-driver/2.53.0/selenium-firefox-driver-2.53.0.jar [ERROR] urls[42] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-ie-driver/2.53.0/selenium-ie-driver-2.53.0.jar [ERROR] urls[43] = file:/Users/tarunsahu/.m2/repository/net/java/dev/jna/jna/4.1.0/jna-4.1.0.jar [ERROR] urls[44] = file:/Users/tarunsahu/.m2/repository/net/java/dev/jna/jna-platform/4.1.0/jna-platform-4.1.0.jar [ERROR] urls[45] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-safari-driver/2.53.0/selenium-safari-driver-2.53.0.jar [ERROR] urls[46] = file:/Users/tarunsahu/.m2/repository/io/netty/netty/3.5.7.Final/netty-3.5.7.Final.jar [ERROR] urls[47] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-support/2.53.0/selenium-support-2.53.0.jar [ERROR] urls[48] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-leg-rc/2.53.0/selenium-leg-rc-2.53.0.jar [ERROR] urls[49] = file:/Users/tarunsahu/.m2/repository/org/yaml/snakeyaml/1.8/snakeyaml-1.8.jar [ERROR] urls[50] = file:/Users/tarunsahu/.m2/repository/com/codeborne/phantomjsdriver/1.2.1/phantomjsdriver-1.2.1.jar [ERROR] urls[51] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/htmlunit-driver/2.20/htmlunit-driver-2.20.jar [ERROR] urls[52] = file:/Users/tarunsahu/.m2/repository/io/appium/java-client/3.4.1/java-client-3.4.1.jar [ERROR] urls[53] = file:/Users/tarunsahu/.m2/repository/commons-validator/commons-validator/1.5.0/commons-validator-1.5.0.jar [ERROR] urls[54] = file:/Users/tarunsahu/.m2/repository/commons-beanutils/commons-beanutils/1.9.2/commons-beanutils-1.9.2.jar [ERROR] urls[55] = file:/Users/tarunsahu/.m2/repository/commons-digester/commons-digester/1.8.1/commons-digester-1.8.1.jar [ERROR] urls[56] = file:/Users/tarunsahu/.m2/repository/org/codehaus/groovy/groovy/2.4.4/groovy-2.4.4.jar [ERROR] urls[57] = file:/Users/tarunsahu/.m2/repository/net/sf/opencsv/opencsv/2.0/opencsv-2.0.jar [ERROR] urls[58] = file:/Users/tarunsahu/.m2/repository/commons-beanutils/commons-beanutils-core/1.8.3/commons-beanutils-core-1.8.3.jar [ERROR] urls[59] = file:/Users/tarunsahu/.m2/repository/com/googlecode/lambdaj/lambdaj/2.3.3/lambdaj-2.3.3.jar [ERROR] urls[60] = file:/Users/tarunsahu/.m2/repository/joda-time/joda-time/2.7/joda-time-2.7.jar [ERROR] urls[61] = file:/Users/tarunsahu/.m2/repository/com/thoughtworks/xstream/xstream/1.4.9/xstream-1.4.9.jar [ERROR] urls[62] = file:/Users/tarunsahu/.m2/repository/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar [ERROR] urls[63] = file:/Users/tarunsahu/.m2/repository/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar [ERROR] urls[64] = file:/Users/tarunsahu/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar [ERROR] urls[65] = file:/Users/tarunsahu/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar [ERROR] urls[66] = file:/Users/tarunsahu/.m2/repository/org/freemarker/freemarker/2.3.23/freemarker-2.3.23.jar [ERROR] urls[67] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/jexcelapi/jxl/2.6.12/jxl-2.6.12.jar [ERROR] urls[68] = file:/Users/tarunsahu/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar [ERROR] urls[69] = file:/Users/tarunsahu/.m2/repository/org/hamcrest/hamcrest-library/1.3/hamcrest-library-1.3.jar [ERROR] urls[70] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/htmlunit/htmlunit/2.20/htmlunit-2.20.jar [ERROR] urls[71] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/htmlunit/htmlunit-core-js/2.17/htmlunit-core-js-2.17.jar [ERROR] urls[72] = file:/Users/tarunsahu/.m2/repository/xerces/xercesImpl/2.11.0/xercesImpl-2.11.0.jar [ERROR] urls[73] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/nekohtml/nekohtml/1.9.22/nekohtml-1.9.22.jar [ERROR] urls[74] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/cssparser/cssparser/0.9.18/cssparser-0.9.18.jar [ERROR] urls[75] = file:/Users/tarunsahu/.m2/repository/org/w3c/css/sac/1.3/sac-1.3.jar [ERROR] urls[76] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-client/9.2.15.v20160210/websocket-client-9.2.15.v20160210.jar [ERROR] urls[77] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/jetty-util/9.2.15.v20160210/jetty-util-9.2.15.v20160210.jar [ERROR] urls[78] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/jetty-io/9.2.15.v20160210/jetty-io-9.2.15.v20160210.jar [ERROR] urls[79] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-common/9.2.15.v20160210/websocket-common-9.2.15.v20160210.jar [ERROR] urls[80] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-api/9.2.15.v20160210/websocket-api-9.2.15.v20160210.jar [ERROR] urls[81] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar [ERROR] urls[82] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4.jar [ERROR] urls[83] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2.jar [ERROR] urls[84] = file:/Users/tarunsahu/.m2/repository/org/fluentlenium/fluentlenium-core/0.10.2/fluentlenium-core-0.10.2.jar [ERROR] urls[85] = file:/Users/tarunsahu/.m2/repository/com/jhlabs/filters/2.0.235/filters-2.0.235.jar [ERROR] urls[86] = file:/Users/tarunsahu/.m2/repository/org/asciidoctor/asciidoctor-java-integration/0.1.4/asciidoctor-java-integration-0.1.4.jar [ERROR] urls[87] = file:/Users/tarunsahu/.m2/repository/org/jruby/jruby-complete/1.7.4/jruby-complete-1.7.4.jar [ERROR] urls[88] = file:/Users/tarunsahu/.m2/repository/org/imgscalr/imgscalr-lib/4.2/imgscalr-lib-4.2.jar [ERROR] urls[89] = file:/Users/tarunsahu/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar [ERROR] urls[90] = file:/Users/tarunsahu/.m2/repository/org/hibernate/hibernate-validator/5.1.1.Final/hibernate-validator-5.1.1.Final.jar [ERROR] urls[91] = file:/Users/tarunsahu/.m2/repository/org/jboss/logging/jboss-logging/3.1.3.GA/jboss-logging-3.1.3.GA.jar [ERROR] urls[92] = file:/Users/tarunsahu/.m2/repository/com/fasterxml/classmate/1.0.0/classmate-1.0.0.jar [ERROR] urls[93] = file:/Users/tarunsahu/.m2/repository/javax/el/javax.el-api/2.2.4/javax.el-api-2.2.4.jar [ERROR] urls[94] = file:/Users/tarunsahu/.m2/repository/org/glassfish/web/javax.el/2.2.4/javax.el-2.2.4.jar [ERROR] urls[95] = file:/Users/tarunsahu/.m2/repository/xalan/xalan/2.7.2/xalan-2.7.2.jar [ERROR] urls[96] = file:/Users/tarunsahu/.m2/repository/xalan/serializer/2.7.2/serializer-2.7.2.jar [ERROR] urls[97] = file:/Users/tarunsahu/.m2/repository/com/jayway/awaitility/awaitility/1.6.3/awaitility-1.6.3.jar [ERROR] urls[98] = file:/Users/tarunsahu/.m2/repository/com/typesafe/config/1.2.1/config-1.2.1.jar [ERROR] urls[99] = file:/Users/tarunsahu/.m2/repository/org/jsoup/jsoup/1.8.3/jsoup-1.8.3.jar [ERROR] urls[100] = file:/Users/tarunsahu/.m2/repository/com/google/jimfs/jimfs/1.0/jimfs-1.0.jar [ERROR] urls[101] = file:/Users/tarunsahu/.m2/repository/org/eclipse/aether/aether-util/1.0.0.v20140518/aether-util-1.0.0.v20140518.jar [ERROR] urls[102] = file:/Users/tarunsahu/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar [ERROR] urls[103] = file:/Users/tarunsahu/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar [ERROR] urls[104] = file:/Users/tarunsahu/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.0.M1/org.eclipse.sisu.inject-0.3.0.M1.jar [ERROR] urls[105] = file:/Users/tarunsahu/.m2/repository/org/sonatype/sisu/sisu-guice/3.2.3/sisu-guice-3.2.3-no_aop.jar [ERROR] urls[106] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar [ERROR] urls[107] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.20/plexus-utils-3.0.20.jar [ERROR] urls[108] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar [ERROR] urls[109] = file:/Users/tarunsahu/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar [ERROR] urls[110] = file:/Users/tarunsahu/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar [ERROR] urls[111] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar [ERROR] urls[112] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/reporting/maven-reporting-api/3.0/maven-reporting-api-3.0.jar [ERROR] urls[113] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/doxia/doxia-sink-api/1.0/doxia-sink-api-1.0.jar [ERROR] Number of foreign imports: 1 [ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]] [ERROR] [ERROR] -----------------------------------------------------: org.apache.commons.lang3.StringUtils [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException

I have attached my project

NewProject.zip

wakaleo commented 7 years ago

The failsafe plugin is not matching any test classes. This is because "TestRunner" does not match the default naming conventions used by Failsafe (http://maven.apache.org/surefire/maven-failsafe-plugin/examples/inclusion-exclusion.html). You need to rename your test runner to match these conventions, or modify the failsafe configuration to pick up your test runner class.

Look at https://github.com/serenity-bdd/screenplay-pattern-todomvc for an example of configuring the failsafe plugin to run any test classes.

sahutarun commented 7 years ago

Thanks John. I just updated the POM by adding

TestRunner.java

Now the tests are running but aggregate reports are not generating as still, the build fails. Any Idea why this is happening. Please help as I am trying this since so many days.

wakaleo commented 7 years ago

What error message do you get?

sahutarun commented 7 years ago

Here is my POM

<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">

4.0.0
<groupId>FinancialServices</groupId>
<artifactId>NewProject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>NewProject</name>
<url>http://maven.apache.org</url>

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

<dependencies>

    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-java -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>1.2.5</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-junit -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>1.2.5</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/junit/junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-picocontainer -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-picocontainer</artifactId>
        <version>1.2.4</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.0.1</version>
    </dependency>

    <!-- http://mvnrepository.com/artifact/net.serenity-bdd/serenity-core -->
    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-core</artifactId>
        <version>1.1.36</version>
    </dependency>

    <!-- http://mvnrepository.com/artifact/net.serenity-bdd/serenity-cucumber -->
    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-cucumber</artifactId>
        <version>1.1.8</version>
    </dependency>

    <dependency>
        <groupId>net.serenity-bdd</groupId>
        <artifactId>serenity-junit</artifactId>
        <version>${serenity.version}</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.6.1</version>
    </dependency>

    <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>1.8.6</version>
    </dependency>

    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.1</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.53.0</version>
    </dependency>

</dependencies>

<build>
    <plugins>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.18.1</version>
            <configuration>
                <testFailureIgnore>true</testFailureIgnore>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.5.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

        <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>2.19.1</version>
            <configuration>
                <includes>
                    <include>TestRunner.java</include>
                </includes>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>integration-test</goal>
                        <goal>verify</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>net.serenity-bdd.maven.plugins</groupId>
            <artifactId>serenity-maven-plugin</artifactId>
            <version>${serenity.maven.version}</version>
            <dependencies>
                <dependency>
                    <groupId>net.serenity-bdd</groupId>
                    <artifactId>serenity-core</artifactId>
                    <version>${serenity.version}</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <id>serenity-reports</id>
                    <phase>post-integration-test</phase>
                    <goals>
                        <goal>aggregate</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

While executing I get this even Serenity Test is Passed:

[INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 15.207 s [INFO] Finished at: 2017-07-23T13:38:13+05:30 [INFO] Final Memory: 32M/277M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate (serenity-reports) on project NewProject: Execution serenity-reports of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate failed: A required class was missing while executing net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36:aggregate: org/apache/commons/lang3/StringUtils [ERROR] ----------------------------------------------------- [ERROR] realm = plugin>net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.1.36 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy [ERROR] urls[0] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/maven/plugins/serenity-maven-plugin/1.1.36/serenity-maven-plugin-1.1.36.jar [ERROR] urls[1] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/serenity-core/1.1.36/serenity-core-1.1.36.jar [ERROR] urls[2] = file:/Users/tarunsahu/.m2/repository/com/google/guava/guava/18.0/guava-18.0.jar [ERROR] urls[3] = file:/Users/tarunsahu/.m2/repository/com/google/code/findbugs/jsr305/3.0.1/jsr305-3.0.1.jar [ERROR] urls[4] = file:/Users/tarunsahu/.m2/repository/com/google/inject/guice/3.0/guice-3.0.jar [ERROR] urls[5] = file:/Users/tarunsahu/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar [ERROR] urls[6] = file:/Users/tarunsahu/.m2/repository/cglib/cglib/3.1/cglib-3.1.jar [ERROR] urls[7] = file:/Users/tarunsahu/.m2/repository/org/ow2/asm/asm/5.0.3/asm-5.0.3.jar [ERROR] urls[8] = file:/Users/tarunsahu/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar [ERROR] urls[9] = file:/Users/tarunsahu/.m2/repository/org/objenesis/objenesis/2.1/objenesis-2.1.jar [ERROR] urls[10] = file:/Users/tarunsahu/.m2/repository/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.jar [ERROR] urls[11] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-core/1.2.4/cucumber-core-1.2.4.jar [ERROR] urls[12] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-html/0.2.3/cucumber-html-0.2.3.jar [ERROR] urls[13] = file:/Users/tarunsahu/.m2/repository/info/cukes/cucumber-jvm-deps/1.0.5/cucumber-jvm-deps-1.0.5.jar [ERROR] urls[14] = file:/Users/tarunsahu/.m2/repository/info/cukes/gherkin/2.12.2/gherkin-2.12.2.jar [ERROR] urls[15] = file:/Users/tarunsahu/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar [ERROR] urls[16] = file:/Users/tarunsahu/.m2/repository/junit/junit/4.12/junit-4.12.jar [ERROR] urls[17] = file:/Users/tarunsahu/.m2/repository/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar [ERROR] urls[18] = file:/Users/tarunsahu/.m2/repository/net/serenity-bdd/serenity-report-resources/1.1.36/serenity-report-resources-1.1.36.jar [ERROR] urls[19] = file:/Users/tarunsahu/.m2/repository/com/google/code/gson/gson/2.4/gson-2.4.jar [ERROR] urls[20] = file:/Users/tarunsahu/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar [ERROR] urls[21] = file:/Users/tarunsahu/.m2/repository/com/opera/operadriver/1.5/operadriver-1.5.jar [ERROR] urls[22] = file:/Users/tarunsahu/.m2/repository/com/opera/operalaunchers/1.1/operalaunchers-1.1.jar [ERROR] urls[23] = file:/Users/tarunsahu/.m2/repository/com/google/protobuf/protobuf-java/2.4.1/protobuf-java-2.4.1.jar [ERROR] urls[24] = file:/Users/tarunsahu/.m2/repository/commons-jxpath/commons-jxpath/1.3/commons-jxpath-1.3.jar [ERROR] urls[25] = file:/Users/tarunsahu/.m2/repository/org/ini4j/ini4j/0.5.2/ini4j-0.5.2.jar [ERROR] urls[26] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-server/2.53.0/selenium-server-2.53.0.jar [ERROR] urls[27] = file:/Users/tarunsahu/.m2/repository/com/beust/jcommander/1.48/jcommander-1.48.jar [ERROR] urls[28] = file:/Users/tarunsahu/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar [ERROR] urls[29] = file:/Users/tarunsahu/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar [ERROR] urls[30] = file:/Users/tarunsahu/.m2/repository/mx4j/mx4j-tools/3.0.1/mx4j-tools-3.0.1.jar [ERROR] urls[31] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/jetty-repacked/9.2.13.v20150730/jetty-repacked-9.2.13.v20150730.jar [ERROR] urls[32] = file:/Users/tarunsahu/.m2/repository/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar [ERROR] urls[33] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/jetty-rc-repacked/5/jetty-rc-repacked-5.jar [ERROR] urls[34] = file:/Users/tarunsahu/.m2/repository/net/jcip/jcip-annotations/1.0/jcip-annotations-1.0.jar [ERROR] urls[35] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-java/2.53.0/selenium-java-2.53.0.jar [ERROR] urls[36] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-chrome-driver/2.53.0/selenium-chrome-driver-2.53.0.jar [ERROR] urls[37] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-remote-driver/2.53.0/selenium-remote-driver-2.53.0.jar [ERROR] urls[38] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-api/2.53.0/selenium-api-2.53.0.jar [ERROR] urls[39] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-edge-driver/2.53.0/selenium-edge-driver-2.53.0.jar [ERROR] urls[40] = file:/Users/tarunsahu/.m2/repository/org/apache/commons/commons-exec/1.3/commons-exec-1.3.jar [ERROR] urls[41] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-firefox-driver/2.53.0/selenium-firefox-driver-2.53.0.jar [ERROR] urls[42] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-ie-driver/2.53.0/selenium-ie-driver-2.53.0.jar [ERROR] urls[43] = file:/Users/tarunsahu/.m2/repository/net/java/dev/jna/jna/4.1.0/jna-4.1.0.jar [ERROR] urls[44] = file:/Users/tarunsahu/.m2/repository/net/java/dev/jna/jna-platform/4.1.0/jna-platform-4.1.0.jar [ERROR] urls[45] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-safari-driver/2.53.0/selenium-safari-driver-2.53.0.jar [ERROR] urls[46] = file:/Users/tarunsahu/.m2/repository/io/netty/netty/3.5.7.Final/netty-3.5.7.Final.jar [ERROR] urls[47] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-support/2.53.0/selenium-support-2.53.0.jar [ERROR] urls[48] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/selenium-leg-rc/2.53.0/selenium-leg-rc-2.53.0.jar [ERROR] urls[49] = file:/Users/tarunsahu/.m2/repository/org/yaml/snakeyaml/1.8/snakeyaml-1.8.jar [ERROR] urls[50] = file:/Users/tarunsahu/.m2/repository/com/codeborne/phantomjsdriver/1.2.1/phantomjsdriver-1.2.1.jar [ERROR] urls[51] = file:/Users/tarunsahu/.m2/repository/org/seleniumhq/selenium/htmlunit-driver/2.20/htmlunit-driver-2.20.jar [ERROR] urls[52] = file:/Users/tarunsahu/.m2/repository/io/appium/java-client/3.4.1/java-client-3.4.1.jar [ERROR] urls[53] = file:/Users/tarunsahu/.m2/repository/commons-validator/commons-validator/1.5.0/commons-validator-1.5.0.jar [ERROR] urls[54] = file:/Users/tarunsahu/.m2/repository/commons-beanutils/commons-beanutils/1.9.2/commons-beanutils-1.9.2.jar [ERROR] urls[55] = file:/Users/tarunsahu/.m2/repository/commons-digester/commons-digester/1.8.1/commons-digester-1.8.1.jar [ERROR] urls[56] = file:/Users/tarunsahu/.m2/repository/org/codehaus/groovy/groovy/2.4.4/groovy-2.4.4.jar [ERROR] urls[57] = file:/Users/tarunsahu/.m2/repository/net/sf/opencsv/opencsv/2.0/opencsv-2.0.jar [ERROR] urls[58] = file:/Users/tarunsahu/.m2/repository/commons-beanutils/commons-beanutils-core/1.8.3/commons-beanutils-core-1.8.3.jar [ERROR] urls[59] = file:/Users/tarunsahu/.m2/repository/com/googlecode/lambdaj/lambdaj/2.3.3/lambdaj-2.3.3.jar [ERROR] urls[60] = file:/Users/tarunsahu/.m2/repository/joda-time/joda-time/2.7/joda-time-2.7.jar [ERROR] urls[61] = file:/Users/tarunsahu/.m2/repository/com/thoughtworks/xstream/xstream/1.4.9/xstream-1.4.9.jar [ERROR] urls[62] = file:/Users/tarunsahu/.m2/repository/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar [ERROR] urls[63] = file:/Users/tarunsahu/.m2/repository/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar [ERROR] urls[64] = file:/Users/tarunsahu/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar [ERROR] urls[65] = file:/Users/tarunsahu/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar [ERROR] urls[66] = file:/Users/tarunsahu/.m2/repository/org/freemarker/freemarker/2.3.23/freemarker-2.3.23.jar [ERROR] urls[67] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/jexcelapi/jxl/2.6.12/jxl-2.6.12.jar [ERROR] urls[68] = file:/Users/tarunsahu/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar [ERROR] urls[69] = file:/Users/tarunsahu/.m2/repository/org/hamcrest/hamcrest-library/1.3/hamcrest-library-1.3.jar [ERROR] urls[70] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/htmlunit/htmlunit/2.20/htmlunit-2.20.jar [ERROR] urls[71] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/htmlunit/htmlunit-core-js/2.17/htmlunit-core-js-2.17.jar [ERROR] urls[72] = file:/Users/tarunsahu/.m2/repository/xerces/xercesImpl/2.11.0/xercesImpl-2.11.0.jar [ERROR] urls[73] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/nekohtml/nekohtml/1.9.22/nekohtml-1.9.22.jar [ERROR] urls[74] = file:/Users/tarunsahu/.m2/repository/net/sourceforge/cssparser/cssparser/0.9.18/cssparser-0.9.18.jar [ERROR] urls[75] = file:/Users/tarunsahu/.m2/repository/org/w3c/css/sac/1.3/sac-1.3.jar [ERROR] urls[76] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-client/9.2.15.v20160210/websocket-client-9.2.15.v20160210.jar [ERROR] urls[77] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/jetty-util/9.2.15.v20160210/jetty-util-9.2.15.v20160210.jar [ERROR] urls[78] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/jetty-io/9.2.15.v20160210/jetty-io-9.2.15.v20160210.jar [ERROR] urls[79] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-common/9.2.15.v20160210/websocket-common-9.2.15.v20160210.jar [ERROR] urls[80] = file:/Users/tarunsahu/.m2/repository/org/eclipse/jetty/websocket/websocket-api/9.2.15.v20160210/websocket-api-9.2.15.v20160210.jar [ERROR] urls[81] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar [ERROR] urls[82] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4.jar [ERROR] urls[83] = file:/Users/tarunsahu/.m2/repository/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2.jar [ERROR] urls[84] = file:/Users/tarunsahu/.m2/repository/org/fluentlenium/fluentlenium-core/0.10.2/fluentlenium-core-0.10.2.jar [ERROR] urls[85] = file:/Users/tarunsahu/.m2/repository/com/jhlabs/filters/2.0.235/filters-2.0.235.jar [ERROR] urls[86] = file:/Users/tarunsahu/.m2/repository/org/asciidoctor/asciidoctor-java-integration/0.1.4/asciidoctor-java-integration-0.1.4.jar [ERROR] urls[87] = file:/Users/tarunsahu/.m2/repository/org/jruby/jruby-complete/1.7.4/jruby-complete-1.7.4.jar [ERROR] urls[88] = file:/Users/tarunsahu/.m2/repository/org/imgscalr/imgscalr-lib/4.2/imgscalr-lib-4.2.jar [ERROR] urls[89] = file:/Users/tarunsahu/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar [ERROR] urls[90] = file:/Users/tarunsahu/.m2/repository/org/hibernate/hibernate-validator/5.1.1.Final/hibernate-validator-5.1.1.Final.jar [ERROR] urls[91] = file:/Users/tarunsahu/.m2/repository/org/jboss/logging/jboss-logging/3.1.3.GA/jboss-logging-3.1.3.GA.jar [ERROR] urls[92] = file:/Users/tarunsahu/.m2/repository/com/fasterxml/classmate/1.0.0/classmate-1.0.0.jar [ERROR] urls[93] = file:/Users/tarunsahu/.m2/repository/javax/el/javax.el-api/2.2.4/javax.el-api-2.2.4.jar [ERROR] urls[94] = file:/Users/tarunsahu/.m2/repository/org/glassfish/web/javax.el/2.2.4/javax.el-2.2.4.jar [ERROR] urls[95] = file:/Users/tarunsahu/.m2/repository/xalan/xalan/2.7.2/xalan-2.7.2.jar [ERROR] urls[96] = file:/Users/tarunsahu/.m2/repository/xalan/serializer/2.7.2/serializer-2.7.2.jar [ERROR] urls[97] = file:/Users/tarunsahu/.m2/repository/com/jayway/awaitility/awaitility/1.6.3/awaitility-1.6.3.jar [ERROR] urls[98] = file:/Users/tarunsahu/.m2/repository/com/typesafe/config/1.2.1/config-1.2.1.jar [ERROR] urls[99] = file:/Users/tarunsahu/.m2/repository/org/jsoup/jsoup/1.8.3/jsoup-1.8.3.jar [ERROR] urls[100] = file:/Users/tarunsahu/.m2/repository/com/google/jimfs/jimfs/1.0/jimfs-1.0.jar [ERROR] urls[101] = file:/Users/tarunsahu/.m2/repository/org/eclipse/aether/aether-util/1.0.0.v20140518/aether-util-1.0.0.v20140518.jar [ERROR] urls[102] = file:/Users/tarunsahu/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar [ERROR] urls[103] = file:/Users/tarunsahu/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar [ERROR] urls[104] = file:/Users/tarunsahu/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.0.M1/org.eclipse.sisu.inject-0.3.0.M1.jar [ERROR] urls[105] = file:/Users/tarunsahu/.m2/repository/org/sonatype/sisu/sisu-guice/3.2.3/sisu-guice-3.2.3-no_aop.jar [ERROR] urls[106] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar [ERROR] urls[107] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.20/plexus-utils-3.0.20.jar [ERROR] urls[108] = file:/Users/tarunsahu/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar [ERROR] urls[109] = file:/Users/tarunsahu/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar [ERROR] urls[110] = file:/Users/tarunsahu/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar [ERROR] urls[111] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar [ERROR] urls[112] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/reporting/maven-reporting-api/3.0/maven-reporting-api-3.0.jar [ERROR] urls[113] = file:/Users/tarunsahu/.m2/repository/org/apache/maven/doxia/doxia-sink-api/1.0/doxia-sink-api-1.0.jar [ERROR] Number of foreign imports: 1 [ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]] [ERROR] [ERROR] -----------------------------------------------------: org.apache.commons.lang3.StringUtils [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles:

wakaleo commented 7 years ago

Looks like a dependency conflict - take a look at the dependency versions in the sample project above.

sahutarun commented 7 years ago

Thanks and Yes I managed to resolve those but for some reason, the screenshots are not generating.

Below is my serenity.properties: serenity.project.name = Test serenity.take.screenshots = BEFORE_AFTER_EACH_STEP serenity.requirements.dir = src/test/resources/features webdriver.driver=chrome serenity.requirement.types=feature, story serenity.browser,height = 1200 serenity.browser,width = 1200

screen shot 2017-07-23 at 15 26 57

Is there anything else I have to add?

I am not using @Steps annotation for now In my project setup. I am simply using cucumber Given, When, Then and simple selenium functions. Am I missing something?

wakaleo commented 7 years ago

Have you checked the driver versions, or using a different driver?

sahutarun commented 7 years ago

Thanks. On which all versions this screenshot stuff work? I am using ChromeDriver for mac 2.30 and my Chrome Version is 59.0

wakaleo commented 7 years ago

There are no screenshots because you are creating the WebDriver instance yourself (in LoginSteps), rather than using the one managed by Serenity.

sahutarun commented 7 years ago

Can you please hint me where to pass the driver instance then?

Sorry for the trouble but I have to wrap this quickly so that I can present it to my team.

wakaleo commented 7 years ago

You don't need to manage the driver yourself at all. Just make your page object extend the Serenity PageObject class (eg. https://github.com/serenity-bdd/screenplay-pattern-todomvc/blob/master/src/main/java/net/serenitybdd/demos/todos/pageobjects/pages/TodoListPage.java) and declare the variable in your step library (like here: https://github.com/serenity-bdd/screenplay-pattern-todomvc/blob/master/src/main/java/net/serenitybdd/demos/todos/pageobjects/steps/TodoUserSteps.java).

sahutarun commented 7 years ago

Thanks John. I tried to follow your instructions but it is now giving me null pointer exception.

Attached is the project source code.

NewProject.zip

Page Objects; package pages;

import org.openqa.selenium.WebElement; import org.openqa.selenium.support.FindBy; import org.openqa.selenium.support.How;

import net.serenitybdd.core.pages.PageObject; import net.thucydides.core.annotations.DefaultUrl;

@DefaultUrl("http://www.executeautomation.com/demosite/Login.html") public class LoginPage extends PageObject {

@FindBy(how = How.NAME, using = "UserName")
public WebElement txtUserName;

@FindBy(how = How.NAME, using = "Password")
public WebElement txtPassword;

@FindBy(how = How.NAME, using = "Login")
public WebElement btnLogin;

public void Login()
{
    txtUserName.sendKeys("admin");
    txtPassword.sendKeys("adminPassword");
}

public void ClickLogin()
{
    btnLogin.submit();
}

}

Step Library package steps;

import net.thucydides.core.annotations.Step; import pages.LoginPage;

public class UserActions {

LoginPage loginpage;

@Step
public void i_navigate_to_the_login_page(){
    loginpage.open();
}

@Step
public void i_enter_the_following_for_Login(){
    loginpage.Login();
}

}

Cucumber code: package stepDefination;

import java.util.ArrayList;

import java.util.List;

import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.firefox.FirefoxDriver;

import cucumber.api.java.en.And; import cucumber.api.java.en.Given; import cucumber.api.java.en.Then; import net.thucydides.core.annotations.Managed; import net.thucydides.core.annotations.Steps; import steps.UserActions;

public class LoginSteps{

@Managed(driver="chrome")                              
WebDriver driver;

@Steps
UserActions login;

@Given("^I navigate to the login page$")
public void i_navigate_to_the_login_page() throws Throwable {
//  System.setProperty("webdriver.chrome.driver", "tools/chromedriver");    
//  driver = new ChromeDriver();
//  driver.get("http://www.executeautomation.com/demosite/Login.html");
    login.i_navigate_to_the_login_page();

}

@And("^I enter the username and password$")
public void i_enter_the_following_for_Login() throws Throwable {    

// driver.findElement(By.name("UserName")).sendKeys("admin");; // driver.findElement(By.name("Password")).sendKeys("adminpassword");; login.i_enter_the_following_for_Login();

}

@Given("^I click login button$")
public void i_click_login_button() throws Throwable {

}

@Then("^I should see the userform page$")
public void i_should_see_the_userform_page() throws Throwable {

}

}

Am I doing right?

wakaleo commented 7 years ago

Where are you getting the null pointer?

sahutarun commented 7 years ago

Initially, At the step login.i_navigate_to_the_login_page(); of LoginSteps.java

wakaleo commented 7 years ago

It is most likely a dependency issue with cucumber-pico. I've attached a pom file that works:

pom.xml.zip

sahutarun commented 7 years ago

Thanks, John. That resolve the issues. Thanks for all you help mate.

Really Appreciate it 👍

wakaleo commented 7 years ago

No problem :-).

sahutarun commented 7 years ago

Hi john,

Sorry to bother you again. We are implementing driverfactory to take care of driver instances (driver initialization, browser loading, opening and also its killing). In terms of serenity could you please hint how can we achieve that?

wakaleo commented 7 years ago

Why do you feel the need to do this?

sahutarun commented 7 years ago

We have to run our test on multiple browsers (Chrome, Firefox and IE) and also we want to keep our driver logic away from implementation code. That's the main reason. We also written a wrapper class that cares of WebDriver functions like waits, assertions etc. For now the idea to use Serenity was just for reporting.

Our framework is almost ready and just to take screenshots we have to again look into things. Is there any quick solution that you can offer?

wakaleo commented 7 years ago

Serenity already manages driver lifecycles, different browsers, waits, asserts etc. I'm not sure why you would want to reimplement it all

sahutarun commented 7 years ago

Thanks John. We have already implemented that. We get an idea to start using serenity for reporting. But now seems to get screenshots on the report we have to leverage serenity and its functions. Do you have any sample examples which you can show of using driver lifecycles, different browsers etc.

Sorry for this trouble.

wakaleo commented 7 years ago

See http://serenity-bdd.info/docs/serenity/. For more fine-tuned control, use the Screenplay pattern: http://serenity-bdd.info/docs/serenity/#_serenity_and_the_screenplay_pattern