The reason why the "clean verify serenity:aggregate" executes the test twice is that Maven first executes the Scenarios using Surefire Plugin and again executes the Scenarios using Failsafe plugin. This is confirmed from logs in the clean_verify_serenity_aggregate.txt.
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ apttus-tests ---
[INFO] Surefire report directory: C:\Users\rxvaira\eclipse_workspace\apttus\ApttusTests\target\surefire-reports
.
.
.
[INFO] --- maven-failsafe-plugin:2.18.1:integration-test (default) @ apttus-tests ---
[INFO] Failsafe report directory: C:\Users\rxvaira\eclipse_workspace\apttus\ApttusTests\target\failsafe-reports
To avoid that the scenarios are run twice when executing "clean verify serenity:aggregate" you have to add following configuration in your pom.xml file. One downside will be there that now you will not be able to execute test using "clean test" command as the scenarios are skipped for surefire plugin.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.surefire.plugin.version}</version>
<configuration>
<skip>true</skip>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>