serenity-bdd / serenity-maven-plugin

19 stars 21 forks source link

serenity-maven-plugin:1.2.4:check failed. NullPointerException #57

Closed RStrizhak closed 7 years ago

RStrizhak commented 7 years ago

Hi @wakaleo,

Starting from 1.2.3 version of serenity-maven-plugin serenity:check isn't worked due to changes in commit Added support for tags to the result checker.

We don't use tags and I couldn't transfer empty string for parameter from pom.xml:

 <plugin>
                <groupId>net.serenity-bdd.maven.plugins</groupId>
                <artifactId>serenity-maven-plugin</artifactId>
                <version>${serenity.version}</version>
                <configuration>
                    <outputDirectoryPath>target/site/serenity</outputDirectoryPath>
                    <tags> </tags> <!-- NOT WORKING SOLUTION -->
                </configuration>
                <executions>
                    <execution>
                        <id>serenity-reports</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>aggregate</goal>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
</plugin>

So, when I execute serenity:check with empty/without parameter tags - NPE is thrown.

mvn serenity:check -X

[ERROR] Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.2.4:check (default-cli) on project fpos-test-framework: Execution default-cli of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.2.4:check failed. NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.2.4:check (default-cli) on project fpos-test-framework: Execution default-cli of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:1.2.4:check failed.
..........
Caused by: java.lang.NullPointerException
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:770)
    at com.google.common.base.Splitter.splitToList(Splitter.java:408)
    at net.thucydides.core.reports.ResultChecker.tagsFrom(ResultChecker.java:42)
    at net.thucydides.core.reports.ResultChecker.<init>(ResultChecker.java:38)
    at net.serenitybdd.maven.plugins.SerenityCheckMojo.getResultChecker(SerenityCheckMojo.java:43)
    at net.serenitybdd.maven.plugins.SerenityCheckMojo.execute(SerenityCheckMojo.java:52)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)

Could you please add the following changes (check on null)?

net.serenitybdd.maven.plugins.SerenityCheckMojo#getResultChecker:43 return new ResultChecker(outputDirectory, StringUtils.trimToEmpty(tags));

Regards.

RStrizhak commented 7 years ago

Please see https://github.com/serenity-bdd/serenity-maven-plugin/pull/58