我有多模块maven项目。一个父项和两个子模块。在第一个模块中,我有集成测试,特别是硒化物测试,它们正在测试Web应用程序。 Web应用程序位于第二个模块中。我想通过jetty服务器部署应用程序,然后在一个maven命令中对它运行selenide测试。我尝试了更多的解决方案,其中很少有。
在带有web应用程序的模块中,我设置了jetty插件,以便在测试之前运行服务器。
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<configuration>
<contextPath>web-app</contextPath>
<stopPort>8005</stopPort>
<stopKey>STOP</stopKey>
</configuration>
<executions>
<execution>
<id>start-jetty</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<scanIntervalSeconds>0</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>
</execution>
<execution>
<id>stop-jetty</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
和failsafe-maven-plugin。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>failsafe-maven-plugin</artifactId>
<version>2.4.3-alpha-1</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
但问题是插件找不到任何测试,因为它们在其他模块中。
你能告诉我如何设置failafe以在第一个模块中找到测试吗?或者其他解决方案,例如从父项运行它?
答案 0 :(得分:0)
嗯,我不是专家,也许JUnit @Rule
可以帮助您解决任务:初始化,部署和测试您的网络应用程序。
看看这个: