我们有一个使用 Wildly Swarm 打包为 WAR 文件的 Web 应用程序。Web 应用程序通过自定义 Main 类进行配置,该类在启动 swarm 应用程序时进行处理。
现在我们想用 Arquillian 测试来保护我们的应用程序。我们如何配置在 Arquillian 测试套件中创建的 ShrinkWrap 存档,以便在启动 Web 应用程序进行测试时使用我们的 Main 类?
我们有一个使用 Wildly Swarm 打包为 WAR 文件的 Web 应用程序。Web 应用程序通过自定义 Main 类进行配置,该类在启动 swarm 应用程序时进行处理。
现在我们想用 Arquillian 测试来保护我们的应用程序。我们如何配置在 Arquillian 测试套件中创建的 ShrinkWrap 存档,以便在启动 Web 应用程序进行测试时使用我们的 Main 类?
使用依赖
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>arquillian</artifactId>
</dependency>
这提供了注释@CreateSwarm
,您可以在 arquillian 测试中使用它来创建自定义 Swarm 对象,就像您在主类中所做的一样。
@RunWith(Arquillian.class)
public class SomeTest {
@Deployment
public static JavaArchive createTestArchive() { /* ... */ }
@CreateSwarm
public static Swarm newContainer() throws Exception {
Swarm swarm = new Swarm();
// configure your swarm thingy
return swarm;
}
不幸的是,我还没有真正让这个工作。带有 Wildfly Swarm 的 Arquillian - 在发布时 - 仍然被认为是不稳定的。